Bonjour,
La contribution ci dessous permet d'exporter la plage de cellules sélectionnée dans un fichier CSV (séparateur ; )
Conseil : Associer cette macro à un raccourci clavier vous permettra de faire des exports à moindre efforts
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41 Sub ExportCSV() Dim Fd As FileDialog Dim strChaine As String Dim Plage As Range Dim Ligne As Long Dim Colonne As Integer 'Fenêtre de choix d'emplacement et nom du fichier en sortie Set Fd = Application.FileDialog(msoFileDialogSaveAs) 'Ajout du filtre Fd.FilterIndex = 10 'Sortie si pas de fichier If Fd.Show = False Then Exit Sub 'Plage a trasformer en CSV Set Plage = Selection 'Ouverture du fichier de sortie Open Fd.SelectedItems(1) For Output As #1 'Boucle sur la plage et ajoute les lignes au fichier For Ligne = 1 To Plage.Rows.Count For Colonne = 1 To Plage.Columns.Count If strChaine <> "" Then strChaine = strChaine & ";" strChaine = strChaine & Plage.Cells(Ligne, Colonne).Value Next Colonne Print #1, strChaine strChaine = "" Next Ligne 'Fermeture du fichier Close #1 MsgBox "Fichier : " & Fd.SelectedItems(1) & " disponible" End Sub
Partager