Bonjour,
Je suis en train de chercher à exporter un tableau excel en .csv, or le simple enregistrement au format ne suffit pas pour utiliser les données dans le programme après.
Je dois donc actuellement rentrer manuellement les valeurs séparées par des , puis sauvegarder pour pouvoir l'utiliser après.
j'ai voulu l'automatiser, en faisant une petite macro que voici:
Cependant, comme il écrit un string dans la case il inclut aussi les guillemets "". J'ai vu en cherchant que l'on pouvait éviter cela en utilisant print # cependant comment l'utiliser pour une variable??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Sub convertion() Application.ScreenUpdating = False Dim ligne As String Feuil1.Activate Dim NbLigne As Integer, NbCol As Integer, i As Integer, j As Integer NbLigne = Range("A" & Rows.Count).End(xlUp).Row NbCol = Cells(1, Columns.Count).End(xlToLeft).Column For i = 1 To NbLigne ligne = CStr(Cells(i, 1)) For j = 2 To NbCol ligne = ligne + "," + CStr(Cells(i, j)) Next Feuil2.Activate Cells(i, 1) = ligne Feuil1.Activate Next Feuil2.Activate Dim chemin As Variant Application.ScreenUpdating = True chemin = Application.GetSaveAsFilename( _ fileFilter:="Excel Files (*.csv), *.csv") If chemin <> False Then ActiveWorkbook.SaveAs Filename:= _ chemin, FileFormat:=xlCSV _ , CreateBackup:=False End If End Sub
à noter que si je ré ouvre le fichier issu de cette macro et que je ré enregistre cela fonctionne parfaitement.
(si j'ouvre le fichier avec le bloc notes, j'obtiendrais dans le premier cas: "1,2,3,4", puis après réenregistrement 1,2,3,4)
il est clair que le logiciel utilisant le ficher ne supporte donc pas les guillemets cependant je ne trouve pas comment les supprimer, j'ai essayé de voir en utilisant la fonction mid, mais cela ne coupe pas les guillemets.
Si vous avez une idée merci de le faire savoir.
Partager