Problème ligne colonne VBA
Fermé
Ereudet
Messages postés
23
Date d'inscription
vendredi 18 mai 2018
Statut
Membre
Dernière intervention
13 septembre 2018
-
1 juin 2018 à 18:04
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 5 juin 2018 à 22:31
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 5 juin 2018 à 22:31
A voir également:
- Problème ligne colonne VBA
- Déplacer une colonne excel - Guide
- Formule somme excel colonne - Guide
- Aller à la ligne excel - Guide
- Trier colonne excel - Guide
- Colonne word - Guide
3 réponses
JuanLucas38
Messages postés
57
Date d'inscription
mardi 22 mai 2018
Statut
Membre
Dernière intervention
3 avril 2023
4
1 juin 2018 à 19:56
1 juin 2018 à 19:56
J'ai une solution mais je ne l'ai jamais fais en macro.
Je te donne la solution manuelle peut être que tu trouveras le code qui va bien.
Sélectionnes les données de la colonne A (avec la souris bien sur)
De A1 à A6 pour ton cas
Dans l'onglet "Données", Convertir, Délimité, Suivant, Sélectionnes la virgule, Terminé.
Tes données seront dans les colonnes souhaitées.
Vois si tu peux retranscrire le code.
Je te donne la solution manuelle peut être que tu trouveras le code qui va bien.
Sélectionnes les données de la colonne A (avec la souris bien sur)
De A1 à A6 pour ton cas
Dans l'onglet "Données", Convertir, Délimité, Suivant, Sélectionnes la virgule, Terminé.
Tes données seront dans les colonnes souhaitées.
Vois si tu peux retranscrire le code.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
Modifié le 2 juin 2018 à 10:22
Modifié le 2 juin 2018 à 10:22
Bonjour,
C'est normal :
CSV = Comma Separated Value
i.e. : Valeurs séparées par des virgules
PS : ouvres ton fichier csv avec LibreOffice tu verras qu'il est correct.
C'est normal :
CSV = Comma Separated Value
i.e. : Valeurs séparées par des virgules
PS : ouvres ton fichier csv avec LibreOffice tu verras qu'il est correct.
Ereudet
Messages postés
23
Date d'inscription
vendredi 18 mai 2018
Statut
Membre
Dernière intervention
13 septembre 2018
2 juin 2018 à 13:04
2 juin 2018 à 13:04
D'accord merci. Comment faire pour que les valeurs apparaissent bien en colonnes B et C, en restant en .csv ? Merci d'avance
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
2 juin 2018 à 22:33
2 juin 2018 à 22:33
Au lieu d'ouvrir le fichier csv, faire :
Données/A partir du fichier texte/Délimité/virgule
Données/A partir du fichier texte/Délimité/virgule
JuanLucas38
Messages postés
57
Date d'inscription
mardi 22 mai 2018
Statut
Membre
Dernière intervention
3 avril 2023
4
>
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
2 juin 2018 à 22:38
2 juin 2018 à 22:38
Le code est celui-ci. Par contre à toi d'adapter les cellules A1:A6 (données de départ)
Idem pour Array(1,1), Array(2,1) etc... le premier chiffre étant la colonne 1=A, 2=B 3=C etc... et le second la ligne
Vu que tu as 3 valeurs dans les , (virgules) il faut les 3 Array si tu en as plus il faudra les ajouter.
Range("A1:A6").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
Idem pour Array(1,1), Array(2,1) etc... le premier chiffre étant la colonne 1=A, 2=B 3=C etc... et le second la ligne
Vu que tu as 3 valeurs dans les , (virgules) il faut les 3 Array si tu en as plus il faudra les ajouter.
Ereudet
Messages postés
23
Date d'inscription
vendredi 18 mai 2018
Statut
Membre
Dernière intervention
13 septembre 2018
2 juin 2018 à 22:39
2 juin 2018 à 22:39
Le problème c'est que ce n'est pas moi qui vais ouvrir le fichier, c'est un programme qui va l'ouvrir pour l'intégrer dans une base de données, ma macro crée plus d'une centaine de fichier csv chaque mois, qui sont exportés sur un ftp, puis il sont ensuite intégrés dans une base de données, mais il faut que la forme soit correcte, avec les bonnes infos dans les différentes cellules des colonnes A, B, C. Donc là je l'ouvre à la main juste pour regarder que le forme est correcte. Pas évident je sais :/ si vous avez une autre idée, je suis preneur ! Merci :)
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
Modifié le 2 juin 2018 à 22:46
Modifié le 2 juin 2018 à 22:46
Si c'est toi qui crée les csv, utilises comme séparateur le point virgule à la place de la virgule, il n'y aura pas de problème pour l'ouvrir avec Excel (à condition que ce soit Excel version française).
Sinon pour être plus universel il suffit d'utiliser le format .txt (plutôt que csv qui est spécifique à chaque pays)
Sinon pour être plus universel il suffit d'utiliser le format .txt (plutôt que csv qui est spécifique à chaque pays)
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
3 juin 2018 à 00:24
3 juin 2018 à 00:24
Pour ouvrir un csv anglais (séparé par des virgules) :
Set wbk = Workbooks.Open(Filename:=nomFichier, Format:=2, local:=False)
2 juin 2018 à 13:05