Bonjour,
Afin d'alimenter un vieux gestionnaire de contacts (pas le choix sigh), je cherche à générer un fichier CSV à l'aide d'une macro.
Cette dernière doit reprendre juste 2 colonnes ("nom", "numero") en provenance d'un gros annuaire au format excel.
J'ai essayé de me dépatouiller en pondant quelques bribes de codes et quelques recherches, mais mon niveau en vba nécessite quelques lumières ><
Plusieurs contraintes viennent en effet pimenter l'opération :
• Les colonnes "nom" et "numero" ne se trouve pas toujours au même endroit, ne sont pas forcément adjacents et la macro doit "parcourir" la feuille afin de repérer les 2 colonnes à traiter.
• Le classeur excel peut contenir plusieurs onglets (à traiter également donc, et à placer dans le même fichier CSV).
Voila un début de code, je ne sais pas si on peut en faire quelques chose. Ca a l'air tout bête, pourtant mes différents essais n'étaient pas concluant, et je commence à désespérer.
Si vous avez quelques tuyaux, je suis preneur
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 Sub RunForrestRun() Dim ligne As Integer Dim colonne As Integer Dim i As Integer Dim first As Boolean Dim result As String Dim d As String Dim o As Worksheet Dim fso As New FileSystemObject Dim t As TextStream Set t = fso.OpenTextFile(ActiveWorkbook.Path & "\listing_numero.csv", ForWriting, True) Dim col_titre As New Collection Dim col_valeur As New Collection ' écriture entete t.Write "Nom;Fax" t.Write vbCrLf ' boucle sur les onglets For Each o In ActiveWorkbook.Worksheets o.Select ligne = LIGNE_INIT colonne = COLONNE_LIGNE_SENS + 1 ...
Merci,
Zelnist.
Partager