Fichier CSV

Bonjour,

Je suis responsable des stocks dans une entreprise et nous venons de recevoir un magasin électronique qui nous indique les pièces de nous avons besoin de commander.

Le problème est que nous recevons un fichier CSV du type:

Pour indiquer les pièces à commander le magasin électronique enverra un fichier CSV vers l'ordinateur du type A1234567$Q1000&Rcroissant au chocolat (derrière un "A" il y aura toujours le N° d'article, derrière un "Q" la quantité à commander et derrière un "R" la description du produit).

Je ne suis pas du tout un spécialiste VBA, mais j'ai réussi à coder une formule pour séparer les infos dans les cases Excel:

Sub ExerciceFinal_ImportDonnees()

Dim monFichierSource As String

Dim tableauFrequentation(2) As Variant

monFichierSource = Application.GetOpenFilename()

Open monFichierSource For Input As #1

Range("A1").Select

row_number = 0

Do Until EOF(1)

Line Input #1, ligneTexte

ligneItems = Split(ligneTexte, "$")

ActiveCell.Offset(row_number, 0).Value = ligneItems(0)

ActiveCell.Offset(row_number, 1).Value = ligneItems(1)

ActiveCell.Offset(row_number, 2).Value = ligneItems(2)

row_number = row_number + 1

Loop

Close #1

End Sub

Le problème est que ça écrit A1234567 Q1000 Rcroissant au chocolat (dans des cases différentes)

Comment puis-je donc faire pour que le A, le Q et le R disparaissent (donc afficher seulement ce qui suit ces lettres)

Voilà j'espère que j'ai été assez clair, et j'espère que quelqu'un acceptera de me donner un petit coup de main

Merci

Bonjour,

A tester.

Public Sub ExerciceFinal_ImportDonnees()
Dim monFichierSource As String
Dim tableauFrequentation(2) As Variant

    monFichierSource = Application.GetOpenFilename()
    Open monFichierSource For Input As #1
    Range("A1").Select
    row_number = 0

    Do Until EOF(1)
        Line Input #1, ligneTexte
        ligneItems = Split(ligneTexte, "$")

        ActiveCell.Offset(row_number, 0).Value = Right(ligneItems(0), Len(ligneItems(0)) - 1)
        ActiveCell.Offset(row_number, 1).Value = Right(ligneItems(1), Len(ligneItems(1)) - 1)
        ActiveCell.Offset(row_number, 2).Value = Right(ligneItems(2), Len(ligneItems(2)) - 1)
        row_number = row_number + 1
    Loop
    Close #1

End Sub

Ca fonctionne !!!

Merci beaucoup !!

Re,

Merci pour ton merci beaucoup, mais n'oublie pas de clore le sujet.

Rechercher des sujets similaires à "fichier csv"