Extraction de données

Extraction de données - VB/VBA/VBS - Programmation

Marsh Posté le 04-04-2012 à 14:09:40    

Est ce possible et pas trop difficile de programmer sous vba ou autre, un petit modèle permettant d'extraire deux nombres dans un fichier volumineux ? :o  
 
ls se situent tous dans le même dossier, toujours à la même ligne et même colonne d'un fichier à l'autre.  
 
J'ai 200 à 300 fichiers à faire par simulation (une dizaine de simu), à la main c'est ultra long  
 
De l'aide serait réellement la bienvenue :jap:  
 
(j'ai des notions de prog, je suis en master énergétique, j'utilise matlab, fut un temps vba mais c'était il y a plus de 3 ans.)


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 14:09:40   

Reply

Marsh Posté le 04-04-2012 à 14:16:42    

tu devrais poster dans le topoc de toute les questions :o

Reply

Marsh Posté le 04-04-2012 à 14:16:51    

:hello:  
c'est moi qui t'ai dit de venir poster là.
 
Tu sais faire une nouvelle macro dans excel ?
 
Voilà un exemple qui liste tous les fichier xls d'un dossier :

Code :
  1. Sub Lister_Dossier()
  2. Dim fichier As String
  3.     chemin = "Z:\VBA\Dossier\"
  4.     fichier = Dir(chemin & "*.xls" )
  5.    
  6.     i = 6
  7.    
  8.     Do While fichier <> ""
  9.         Cells(i, 1) = fichier 'Là je met le nom du fichier, c'est ici qu'il faudra mettre le code qui va bien
  10.         fichier = Dir
  11.         i = i + 1
  12.     Loop
  13. End Sub


 
Donc, il faut l'adapter à ton cas :
- Nom du dossier à modifier
- Où faut-il mettre les valeurs
- Où récupérer les données  
- etc ...
 
Dis moi en un peu plus, je pourrai mieux t'aider  :jap:


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 04-04-2012 à 14:17:32    

babylone83 a écrit :

tu devrais poster dans le topoc de toute les questions :o


 [:rotflmao]


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 04-04-2012 à 14:21:13    

Je suis sur Ubuntu doc OpenOffice, j'espère que c'est le même fonctionnement :sweat:
 
Mes actions dans l'ordre :  
 
http://hfr-rehost.net/thumb/self/pic/4abde27f588f746f5d35e8495b9751921d439cc6.png
 
http://hfr-rehost.net/thumb/self/pic/67db643cda5ace49eeac34b6b5097a5a6fd6e864.png
 
 
http://hfr-rehost.net/thumb/self/pic/9900cd2a43205e727a5c0f5a0122d4b666b0cf6e.png
 
 
http://hfr-rehost.net/thumb/self/pic/d6e585f557b82113f2bd26caac8e9c09c4df8144.png
 
http://hfr-rehost.net/thumb/self/pic/6cfea322e3a5d8fb3396e5fbdd3fc6b2c05f0af5.png
 
http://hfr-rehost.net/thumb/self/pic/2df9986525561ee8f36269afe18be341df06e90e.png


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 14:25:34    

Reply

Marsh Posté le 04-04-2012 à 14:26:59    


 [:braysse]


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 14:52:36    

Bah dit donc... il n'y a pas grand monde pour aider une jeune fille en détresse !  [:ootransparent]

Reply

Marsh Posté le 04-04-2012 à 14:54:16    

Merci du soutient  [:wark0]


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 14:57:48    

Désolé mais programmer avec VBA... sous OpenOffice...  [:cerveau vomi]

 

As-tu sur ton ordi ce qu'il faut pour programmer et compiler (en VBA ou autres) de façon autonome sans OpenOffice ?

 

Où alors t'as p'être moyen de passer tes fichiers sous Windows ?


Message édité par Proute2000 le 04-04-2012 à 14:58:56
Reply

Marsh Posté le 04-04-2012 à 14:57:48   

Reply

Marsh Posté le 04-04-2012 à 15:04:21    

Si j'amène mon pc perso ouais je pourrais, mais là le système est sur ubuntu :/  
 
Sous OpenOffice au niveau des macro on peut travailler avec : Python, Javascript et Beanshell en plus du truc de base :o  
 
Sous Ubuntu après vba je crois pas que je puisse faire quoique ce soit :/


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 15:07:11    

Mon frère m'a suggéré d'utiliser SED sous linux, si quelqu'un s'y connait :jap:


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 15:08:01    

Et vba, ça fonctionne ou pas du coup ?
J'ai pas compris cette phrase :
"Sous Ubuntu après vba je crois pas que je puisse faire quoique ce soit"

Message cité 1 fois
Message édité par vave le 04-04-2012 à 15:11:04

---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 04-04-2012 à 15:15:21    

vave a écrit :

Et vba, ça fonctionne ou pas du coup ?
J'ai pas compris cette phrase :
"Sous Ubuntu après vba je crois pas que je puisse faire quoique ce soit"


Que les codes sont pas entièrement compatibles en vba et openoffice basic :/ En fait je pensais que ça l'était :o

 

edit : car je suis sous Ubuntu, j'ai dis vba par habitude :s

 

Là je test avec ton code mais j'ai pas tout pigé encore, t'as regardé les captures ? Je vais chercher les infos dans des fichiers en .fcn, des fichiers ouverts par gedit, excel ne sait pas les ouvrir, c'est pour ça que je pense que c'est mort avec openoffice basic.

 

Du coup la piste de sed serait une bonne idée je pense.

 


Citation :


Code :

 

Sub Lister_Dossier()
Dim fichier As String
    chemin = "/home/boudjema/Resultats_NaOH/2V 0.44%wt\"
    fichier = Dir(chemin & "*.fcn" )
   
    i = 6 pourquoi 6 ?
   
    Do While fichier <> ""
        Cells(i, 1) = fichier 'Là je met le nom du fichier, c'est ici qu'il faudra mettre le code qui va bien quel fichier ? le .ods ?
        fichier = Dir
        i = i + 1
    Loop
End Sub

 


Message édité par Elena Gates le 04-04-2012 à 15:19:49

---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 15:20:11    

Elena Gates a écrit :

Si j'amène mon pc perso ouais je pourrais, mais là le système est sur ubuntu :/

Bah si t'arrives pas avant ce soir... je peux toujours te faire en 3 minutes un p'tit programme en C# t'extrayant les valeurs que tu souhaites... si tu me donnes 2 ou 3 exemples de tes fichiers de données.
 
Autrement je suis étonné qu'il y ait du VBA sous Ubuntu... VBA c'est quand même un langage Microsoft  [:ootransparent]  
 
Normalement tu ne devrais pas avoir trop de difficulté à l'écrire toi même en VBA
 
Il faut y aller étape par étape.
 
1/ trouve le truc/fonction/class qui permet d'ouvrir un fichier en lecture texte
 
2/ ensuite essaie d'afficher une ligne
 
 
... si t'arrives à ça t'as déjà pratiquement tout fait  [:ootransparent]

Reply

Marsh Posté le 04-04-2012 à 15:23:44    

Proute2000 a écrit :

Bah si t'arrives pas avant ce soir... je peux toujours te faire en 3 minutes un p'tit programme en C# t'extrayant les valeurs que tu souhaites... si tu me donnes 2 ou 3 exemples de tes fichiers de données.
 
Autrement je suis étonné qu'il y ait du VBA sous Ubuntu... VBA c'est quand même un langage Microsoft  [:ootransparent]  
 
Normalement tu ne devrais pas avoir trop de difficulté à l'écrire toi même en VBA
 
Il faut y aller étape par étape.
 
1/ trouve le truc/fonction/class qui permet d'ouvrir un fichier en lecture texte
 
2/ ensuite essaie d'afficher une ligne
 
 
... si t'arrives à ça t'as déjà pratiquement tout fait  [:ootransparent]


 
Il n'y a pas de vba sous Ubuntu, cf mon post du dessus :D
 
De mon côté je tente sur SED là :jap:


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 15:27:32    

En fait, je pensais que c'était d'autres fichiers tableur que tu devais ouvrir.
Mais d'après tes captures, c'est des fichiers texte.
 
Et non, le code vba n'est pas compatible avec Ooo.
 
Je ne connais rien à ubuntu, je ne serai pas d'une grande aide je pense ...
D'après ton message d'origine, je pensais que tu étais sur windows/excel, toutes mes confuses  
 
Sinon, ça doit pouvoir se faire en php je pense  :jap:


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 04-04-2012 à 15:45:20    

Pas de prob c'était pas clair de ma part :jap:
 
Le truc c'est que à part Matlab j'ai pas fait de prog, j'y connais rien :sweat :  
 
Là j'ai une bonne piste avec sed mais ça reste compliqué :/


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 16:04:47    

Elena Gates a écrit :

Pas de prob c'était pas clair de ma part :jap:
 
Le truc c'est que à part Matlab j'ai pas fait de prog, j'y connais rien :sweat :  
 
Là j'ai une bonne piste avec sed mais ça reste compliqué :/

Tu pourrais nous écrire déjà ton code en pseudo-langage que l'on comprenne ce que tu souhaites extraire... et sous quelle forme tu veux le ressortir.

Reply

Marsh Posté le 04-04-2012 à 16:21:56    

J'ai été chercher un mec de la programmation qui m'a aidé :jap:

 

#!/bin/bash
mv resutats.txt resutats.txt-old
for i in `ls *.fcn`
 do cat $i | grep -i Vfr | grep -i "#" | grep -iv Element >> resutats.txt
done
exit 0

 

En mettant le .sh dans mon dossier de résultats ça tourne nickel, après sous openoffice je vire les colonnes qui m'intéressent pas, je fait deux trois remplacements de caractèreset ça roule :D

 


Merci beaucoup pour votre aide :jap:


Message édité par Elena Gates le 04-04-2012 à 16:22:23

---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 16:47:09    

Et merde c'est lui qui va y avoir droit ! :/

Reply

Marsh Posté le 04-04-2012 à 16:49:30    

[:dolores:1]


---------------
You may have the body
Reply

Marsh Posté le 04-04-2012 à 16:55:09    

[:cerveau eric]

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed