Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Pb de fichier csv à partir d'une macro

  • Initiateur de la discussion Initiateur de la discussion naviggator
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

naviggator

Guest
Bonjour,

Je viens de migrer une macro d'excel 2003 vers excel7.
Il se trouve que la macro sert à générer un fichier csv.
Or sous 2003, le fichier csv est avec séparateur ; alors que sous xls7 il est séparé par ,

J'ai aussi un pb avec les dates que passent de jjmmaaaa à mmjjaaaa

Existe t-il un paramètre d'environnement dans xls7 qui permet de régler çà?

Merci de votre réponse.

😱
 
Re : Pb de fichier csv à partir d'une macro

La solution la plus simple est de passer par un fichier texte en renommant le csv. Un code tout fait qui copie la feuille du csv dans le classeur contenant la macro
Code:
    Dim NomFichPrincipal as string
    NomFichPrincipal = ThisWorkbook.name 'Le fichier contenant la macro
    'renomme le csv en txt
    Name "D:\xls\Fichier.csv" As "D:\xls\Fichier.txt" 
    Workbooks.OpenText Filename:="D:\xls\Fichier.txt", Origin:=xlWindows, _
        StartRow:=1, DataType:=xlDelimited, Semicolon:=True, DecimalSeparator:="."
    DoEvents 'le classeur actif est ton txt/csv
    'copie la feuille du txt dans le fichier principal en dernière position
    Sheets(1).Copy After:=Workbooks(NomFichPrincipal).Sheets(Workbooks(NomFichPrincipal).sheets.count) 
    DoEvents
    Workbooks("Fichier.txt").close false 'ferme le fichier texte
    DoEvents
    Name "D:\xls\Fichier.txt" As "D:\xls\Fichier.csv" 'renomme le txt en csv
Explication : Un csv est un fichier texte. Il n'y a pas de différence de structure.
Le problème est que VBA ne reconnait pas les points-virgules (semicolon) qui n'existe pas en Anglais, sauf si tu lui précises le séparateur. Les csv ne le permettent pas dans le code mais les txt, si ! Ceci tout au moins jusqu'à la version 2003.
Bon courage
@+
 
Re : Pb de fichier csv à partir d'une macro

Merci beaucoup pour la réponse.
Ca m'a permis de trouver une solution pour faire un retraitement du fichier généré.
Je ne comprends toujours pas pourquoi j'ai cette anomalie, mais ce n'est pas grave.

A bientot😉 peut etre.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
2
Affichages
497
Joponta
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…