Comment créer une macro xlsm

Zuma8 Messages postés 4 Date d'inscription lundi 6 octobre 2014 Statut Membre Dernière intervention 6 octobre 2014 - 6 oct. 2014 à 10:10
jordane45 Messages postés 38137 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 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!

Cordialement

Zuma8

4 réponses

Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
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
0
Zuma8 Messages postés 4 Date d'inscription lundi 6 octobre 2014 Statut Membre Dernière intervention 6 octobre 2014
6 oct. 2014 à 10:34
Bonjour Whismeril,

merci pour cette proposition.

Mais j' aimerais savoir c' est quoi le code à programmer en visual Basic pour y arriver.

merci bien
0
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
6 oct. 2014 à 10:38
Et bien tu fais ce que je t'ai dit et tu auras le code.
0
Zuma8 Messages postés 4 Date d'inscription lundi 6 octobre 2014 Statut Membre Dernière intervention 6 octobre 2014
6 oct. 2014 à 10:49
daccord merci j' essaierais ta methode
0
Zuma8 Messages postés 4 Date d'inscription lundi 6 octobre 2014 Statut Membre Dernière intervention 6 octobre 2014
6 oct. 2014 à 11:34
cela fonctionne merci.

mais comment faire le decoupage d'une chaine de caractère pour l'afficher dans la différente cellule? svp
0
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
6 oct. 2014 à 11:54
Ca dépend du format de la chaine.
Regarde ici les fonctions sur les chaines
http://boisgontierjacques.free.fr/pages_site/chainesvba.htm
0
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
6 oct. 2014 à 11:55
0
jordane45 Messages postés 38137 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
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
0
Rejoignez-nous