VB: Fichiers séquentiels CSV
Utilisateur anonyme
-
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
lermite222 Messages postés 8724 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'aimerais pouvoir récupérer les valeurs d'un fichier CSV avec Visual Basic.
J'ai essayé simplement ce bout de programme pour constater le comportement.
Je sais que cette méthode part du principe que les valeurs sont entre guillemets et séparées par des virgules. Que dois-je ajouter pour spécifier que le séparateur est un ";" ?
lorsque j'essaye de lire la ligne:
"2012-0042";"12/06/2012";"12/06/2012";"200,00";"EUR";"xxxx xxxx xxxx xxxx ";"M.MME DELVAUX DE FENFFE - BORREMAN RUE xxxxx xx xxxx BRUXELLES xxxx xxxx xxxx xxxx BIC BDCHBE22 COMMUNICATION : soldes juillet DATE VALEUR : 12/06/2012";"xxxx xxxx xxxx xxxx ";
Il me la décompose en 3 morceaux ainsi:
2012-0042
;"12/06/2012";"12/06/2012";"200
00";"EUR";"xxxx xxxx xxxx xxxx ";"M.MME DELVAUX DE FENFFE - BORREMAN RUE xxxxx xx xxxx BRUXELLES xxxx xxxx xxxx xxxx BIC BDCHBE22 COMMUNICATION : soldes juillet DATE VALEUR : 12/06/2012";"xxxx xxxx xxxx xxxx ";
Déjà là je comprends pas la logique... pour le premier champ sa a fonctionné.
J'aimerais pouvoir récupérer les valeurs d'un fichier CSV avec Visual Basic.
J'ai essayé simplement ce bout de programme pour constater le comportement.
Open "C:\Users\Hervé Delvaux\Downloads\BE24001556339738EUR_231211-120612.CSV" For Input As #1 Do While Not EOF(1) Input #1, A MsgBox (A) Loop
Je sais que cette méthode part du principe que les valeurs sont entre guillemets et séparées par des virgules. Que dois-je ajouter pour spécifier que le séparateur est un ";" ?
lorsque j'essaye de lire la ligne:
"2012-0042";"12/06/2012";"12/06/2012";"200,00";"EUR";"xxxx xxxx xxxx xxxx ";"M.MME DELVAUX DE FENFFE - BORREMAN RUE xxxxx xx xxxx BRUXELLES xxxx xxxx xxxx xxxx BIC BDCHBE22 COMMUNICATION : soldes juillet DATE VALEUR : 12/06/2012";"xxxx xxxx xxxx xxxx ";
Il me la décompose en 3 morceaux ainsi:
2012-0042
;"12/06/2012";"12/06/2012";"200
00";"EUR";"xxxx xxxx xxxx xxxx ";"M.MME DELVAUX DE FENFFE - BORREMAN RUE xxxxx xx xxxx BRUXELLES xxxx xxxx xxxx xxxx BIC BDCHBE22 COMMUNICATION : soldes juillet DATE VALEUR : 12/06/2012";"xxxx xxxx xxxx xxxx ";
Déjà là je comprends pas la logique... pour le premier champ sa a fonctionné.
A voir également:
- VB: Fichiers séquentiels CSV
- Vb - Télécharger - Langages
- Vb cable - Télécharger - Audio & Musique
- Vb editor - Télécharger - Langages
- Vb runtime - Télécharger - Divers Utilitaires
- Vb express - Télécharger - Langages
1 réponse
Bonjour,
En VB il n'y a pas (à ma connaissance) de moyen direct pour lire un fichier CSV
Quel est le résultat de la première ligne avec LineInput ?
Si la ligne est complète, il te faut enlevé les guillemets avec la fonction Replace() ensuite séparé les parties entre ; (point-virgule) avec la fonction Split()
Si tu dispose d'Excel ce serait plus facile.
Tu dis.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
En VB il n'y a pas (à ma connaissance) de moyen direct pour lire un fichier CSV
Quel est le résultat de la première ligne avec LineInput ?
Si la ligne est complète, il te faut enlevé les guillemets avec la fonction Replace() ensuite séparé les parties entre ; (point-virgule) avec la fonction Split()
Si tu dispose d'Excel ce serait plus facile.
Tu dis.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.