Zuma8
Messages postés4Date d'inscriptionlundi 6 octobre 2014StatutMembreDernière intervention 6 octobre 2014
-
6 oct. 2014 à 10:10
jordane45
Messages postés37290Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention30 mars 2023
-
7 oct. 2014 à 01:50
Bonjour ,
je suis débutant avec visual basic.
En fait j' aimerais écrire un code en Visual Basic me permettant de sélectionner un fichier et de l' ouvrir, puis reporter automatiquement sur ma feuille d' excel les données se trouvant dans mon fichier (qui est mon fichier.out).
S' IL VOUS PLAIT, est ce que l' un d' entre vous saurait comment je peux m'y prendre, car j' en ai besoin pour stocker des résultats journaliers des tests.
Je serais très ravi de pouvoir trouver la solution parmi l' un d' entre vous!
Whismeril
Messages postés18302Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention30 mars 2023622 6 oct. 2014 à 10:22
Bonjour
pour commencer en VBA tu peux utiliser l'outil d'enregistrement de macro (sur Excel 2010 dans Affichage/Macro/Enregistrer une macro).
Cet outil transcrit en code tout ce qui est fait sur excel.
Donc tu lances un enregistrement et tu ouvres ton fichier, tu le mets en forme comme tu veux.
Une fois fini, tu stoppes l'enregistrement, tu ouvres l'editeur et tu peux étudier le code pour le comprendre
jordane45
Messages postés37290Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention30 mars 2023341 7 oct. 2014 à 01:50
Et si tes données sont sous la forme d'un CSV
par exemple : mot1|mot2|mot3|mot4 ( peu importe le séparateur utilisé)...
Il existe dans Excel une fonction : CONVERTIR
et en lançant l'enregistreur de macro et en cliquant dans cette fonction.. tu obtiens le code (que j'ai légèrement modifiée par la suite )
Sub convertStr()
Dim separateur As String
separateur = "|"
Range("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, _
Tab:=False, _
Semicolon:=False, _
Comma:=False, _
Space:=False, _
Other:=True, _
OtherChar:=separateur, _
FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), _
TrailingMinusNumbers:=True
End Sub