Enregistrement fichier csv

8rrr.zip (24.06 Ko)

Je vous avoue que là, j'ai strictement rien compris..

Les paramètres régionaux dans windows ? Quésaco?

Le fichier csv donne cela :

Votre fichier ne reprend pas la colonne 24. Normal cela ?

Les paramètres régionaux dans windows ? Quésaco?

C'est la configuration de windows que l'on trouve en allant dans "Démarrer" --> "Paramètres" --> "Heure et langue" --> "région" --> "Paramètres associés" -->"Région" --> "paramètres supplémentaires". Là on peut changer la , en ;

Par contre cela peut devenir embêtant car il faut les remettre en place sans quoi la virgule deviendra ; pour tous vos autres documents.
Le plus simple serait que lorsque vous ouvrez le CSV, vous changez la virgule en ; avant exportation vers votre ERP

Oui pour le moment car je n'ai pas encore réussi à faire le calcul que je souhaitais

Si l'on enregistre un fichier excel en csv, on a le type "csv séparateur point virgule" ne peut-on pas le choisir dans le programme ?

Il n'est pas possible de le faire à la main car ce serait trop fastidieux mais sinon, peut on ajouter un autre code qui transformerait les "," en ";" ?

Oui pour le moment car je n'ai pas encore réussi à faire le calcul que je souhaitais

C'est à dire ?

Si l'on enregistre un fichier excel en csv, on a le type "csv séparateur point virgule" ne peut-on pas le choisir dans le programme ?

Non parce que VBA sauvegarde par défaut au format Anglais qui est la virgule

Il n'est pas possible de le faire à la main car ce serait trop fastidieux mais sinon, peut on ajouter un autre code qui transformerait les "," en ";" ?

Non car c'est en fermant le CSV qu'excel effectue l'opération. Il faut faire ceci :

- Ouvrez le fichier CSV
- Sélectionnez les données
- dans le menu Accueil, cliquez sur le bouton "Recherche et sélectionner"
- Choisir l'option Remplacer
- Dans la rubrique rechercher, tapez la virgule
- dans remplacer, mettre le ;

Pour la question de rajouter un code, il y a peut être moyen mais cela implique de réouvrir le fichier

Je souhaiterai faire une opération avec un userform.

Je voudrais que la colonne $W2 divise le nombre inscrit dans le userform. ( valeur inscrite à la main car celle-ci peut changer)

Je n'aurai qu'à appuyer sur le "commandButton" pour que l'opération se fasse en colonne $X2 jusqu'à la dernière valeur de la colonne W.

Ah d'accord...

Le code ne peut pas être ajouté dans les lignes d'export ?

Le code ne peut pas être ajouté dans les lignes d'export ?

essayez un peu comme ceci pour voir si vous avez le même résultat que moi. Ajoutez cette partie de code avant le END IF

        Application.ScreenUpdating = False
        Application.DisplayAlerts = False
        Workbooks.OpenText Fichier
        Cells.Replace vbTab, ";", xlPart
        ActiveWorkbook.SaveAs Fichier, xlTextWindows
        ActiveWorkbook.Close False
        Application.DisplayAlerts = True
        Application.ScreenUpdating = True

Je voudrais que la colonne $W2 divise le nombre inscrit dans le userform. ( valeur inscrite à la main car celle-ci peut changer)
Je n'aurai qu'à appuyer sur le "commandButton" pour que l'opération se fasse en colonne $X2 jusqu'à la dernière valeur de la colonne W.

Donnez moi un exemple si je mets le chiffre 2 dans l'usf.

Edit : vous avez posé la question ici -> https://forum.excel-pratique.com/s/goto/1060703

Merci beaucoup !

J'ai repris votre idée initiale en ajoutant seulement le local:=True et, il se trouve que c'est déjà paramétré en ";" au niveau du séparateur de liste cela fonctionne donc !

Merci !

Rechercher des sujets similaires à "enregistrement fichier csv"