[VBA] Extraction .csv

  • Initiateur de la discussion Initiateur de la discussion Escartefigue
  • 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 !

E

Escartefigue

Guest
Bonjour le forum,

Voila mon problème:
J'ai un fichier sur lequel on modifie les quantités (colonne jaune).
Le tableau trie les données dans un deuxième tableau en répertoriant les codes associés (de 2 a 4 codes par référence).
Une fois dans ce tableau je voudrais copier les codes et les qtes (intégrant un espace entre chaque groupes) dans un fichier .csv .

J'ai une macro qui marche mais le problème c'est que la méthode que j'utilise comprend trop de caractère pour les balayer les 603 lignes de code.

Je pense que cette opération est faisable avec une boucle mais je ne maitrise pas.

Merci d'avance

@+
 

Pièces jointes

Re : [VBA] Extraction .csv

Bonjour,

a priori

Code:
Sub CREATEUR_CSV()
 Dim i As Long, j As Byte
 CheminExport = Environ("USERPROFILE") & "\Desktop\"

 With Worksheets("Test")
 Open CheminExport & "Exemple.csv" For Output As #1

 'Entête
 Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "Commentaire 1" & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)
 Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "Commentaire 1" & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)

 For i = 2 To .Range("M" & Rows.Count).End(xlUp).Row Step 4
    For j = 0 To 3
        Print #1, Chr(34) & .Range("M" & i + j).Value & Chr(34) & "," & Chr(34); Chr(34) & "," & Chr(34) & .Range("N" & i + j).Value & Chr(34) & "," & Chr(34); Chr(34)
    Next
    If Worksheets("Test").Range("N" & i + 4) <> 0 Then Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "." & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)
 Next i

 Close #1
 End With
 MsgBox "Exportation terminée"

End Sub

A+
 
Re : [VBA] Extraction .csv

Bonjour,

a priori

Code:
Sub CREATEUR_CSV()
 Dim i As Long, j As Byte
 CheminExport = Environ("USERPROFILE") & "\Desktop\"

 With Worksheets("Test")
 Open CheminExport & "Exemple.csv" For Output As #1

 'Entête
 Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "Commentaire 1" & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)
 Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "Commentaire 1" & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)

 For i = 2 To .Range("M" & Rows.Count).End(xlUp).Row Step 4
    For j = 0 To 3
        Print #1, Chr(34) & .Range("M" & i + j).Value & Chr(34) & "," & Chr(34); Chr(34) & "," & Chr(34) & .Range("N" & i + j).Value & Chr(34) & "," & Chr(34); Chr(34)
    Next
    If Worksheets("Test").Range("N" & i + 4) <> 0 Then Print #1, Chr(34) & "COMMENTAIRE" & Chr(34) & "," & Chr(34) & "." & Chr(34) & "," & Chr(34) & "1" & Chr(34) & "," & Chr(34); Chr(34)
 Next i

 Close #1
 End With
 MsgBox "Exportation terminée"

End Sub

A+

Bonjour Paf, bonjour le forum,

Merci beaucoup, j'ai juste modifié un peu la ligne pour le commentaire car ca ne rendait pas comme je voulais mais sinon c'est parfait!

@+
 
- 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

D
  • Question Question
2
Réponses
28
Affichages
2 K
Deleted member 441486
D
S
Réponses
5
Affichages
6 K
J
Réponses
2
Affichages
2 K
J
J
Réponses
23
Affichages
2 K
C
  • Résolu(e)
Réponses
16
Affichages
3 K
cecenico
C
Retour