Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

idamien

XLDnaute Nouveau
Bonjours à tous.

Mes connaissances de base d'excel ne me suffisent pas à résoudre mon problème et j'ai besoin de votre aide.

La situation est la suivante:
  • Je possède un appareil de mesure de lumière que me permet d’acquérir multiples données dans un fichier csv.
  • Je fais plusieurs acquisitions d'une même source de lumière à différente puissance ce qui me créé X fichiers csv différents dans un dossier

Je souhaiterais importer dans la colonne A toutes les valeurs des positions "B6" des touts les csv de mon dossier,
dans une autre colonne, toutes les valeurs des positions "B7" des mêmes fichiers... et ainsi de suite.

Idéalement je voudrais pouvoir sélectionner les fichiers csv à lire depuis un userforms ou au moins lire touts les fichiers d'un dossier par "BrowseForFolder"

Merci d'avance pour votre aide.
 

Pièces jointes

  • XNOVA18-56 FLASH_17_5429K.zip
    5 KB · Affichages: 31

Lone-wolf

XLDnaute Barbatruc
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

Bonjour idamien et bienvenue sur le Forum ;)

Moi je ne vois que les données en colonne A ??? :confused:

Et qu'est-ce que tu entends par toutes les valeurs des positions "B6" - toutes les valeurs des positions "B7" ??? :confused:


A+ :cool:
 

Marc L

XLDnaute Occasionnel

Bonjour !

J'ai bien les données dans plusieurs colonnes
mais cela demande effectivement une explication claire & exhaustive !
Et puis deux fichiers .csv sources accompagnés d'un classeur résultat rempli selon ces .csv
lèveraient de facto toute ambiguïté …

 

idamien

XLDnaute Nouveau
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

@ Lone-wolf
Salut,
En fait il faut, dans une nouvelle page excel, "ajouter des données à partir du texte" en précisant"," comme caractère de séparation et il crée les colonnes.

@ Marl L
Salut,
Voici un zip avec un exemple de 2 mesures faites et une représentation du tableau que je souhaiterais avoir après importations des données.

Merci pour vos aides
 

Pièces jointes

  • Test de mesure.zip
    17.6 KB · Affichages: 33

Marc L

XLDnaute Occasionnel
Une p'tite démonstration à la romaine, du temps de la grandeur de Rome !


Code à coller dans le module de la feuille de calculs regroupant les mesures :

VB:
Sub Demo1()
    ChDrive ThisWorkbook.Path:  ChDir ThisWorkbook.Path
    CSV = Application.GetOpenFilename("Fichiers csv ,*.csv", , _
          "    Sélection des fichiers de mesures :", , True)
    If Not IsArray(CSV) Then Exit Sub
    D$ = Left$(CSV(1), InStrRev(CSV(1), "\"))
    ReDim VA(UBound(CSV), 27)
    Me.UsedRange.Clear
With CreateObject("ADODB.Stream")
                    .Charset = "UTF-8"
    For N% = 1 To UBound(CSV)
                    .Open
                    .LoadFromFile CSV(N)
        SPQ = Split(.ReadText, vbCrLf)
                    .Close
        If UBound(SPQ) > 30 Then
          VA(N, 0) = Split(Replace(CSV(N), D, ""), ".")(0)
            For R% = 5 To 31
                                      SP = Split(SPQ(R), ",")
              If N = 1 Then VA(0, R - 4) = SP(0)
                            VA(N, R - 4) = SP(1)
            Next
        End If
    Next
End With
    With Cells(1).Resize(UBound(VA) + 1, 28)
        .Value = VA
        .Columns.AutoFit
    End With
End Sub
Sélection multiple de fichiers possible via la touche Ctrl ou Shift (Maj) …

_______________________________________________________________________________
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …

_______________________________________________________________________________
Je suis Paris, Charlie, …
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

Bonsoir à tous,

Marc j'aime bien ton humour !

mais juste une petite chose, ici Me me cause une erreur ce sera pas plutôt ActiveSheet !?
'Me.UsedRange.Clear
ActiveSheet.UsedRange.Clear

et ici c'est plutôt comme ceci:
CSV = Application.GetOpenFilename("Fichiers csv(*.csv),*.csv", , "Sélection des fichiers de mesures :", , True)
 
Dernière édition:

Marc L

XLDnaute Occasionnel
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

ici Me me cause une erreur ce sera pas plutôt ActiveSheet !?
Oui pour ceux ne lisant pas la consigne pourtant colorée :

Code à coller dans le module de la feuille de calculs regroupant les mesures

J'ai édité mon code pour retirer la parenthèse restée inutilement mais non bloquante,
merci et bonne soirée !

 

idamien

XLDnaute Nouveau
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

Oui pour ceux ne lisant pas la consigne pourtant colorée :


J'ai édité mon code pour retirer la parenthèse restée inutilement mais non bloquante,
merci et bonne soirée !


Alors pour cette partie là je ne suis pas sûr d'avoir tout compris...
Par contre cette macro fonctionne parfaitement et je vous en remercie, cela va m'être d'une grande aide.
 

idamien

XLDnaute Nouveau
Re : Récupérer dans un seul fichier excel les données de plusieur fichiers CSV

Je viens de m'apercevoir qu'il me faudrait aussi l'information comprise en "B5" (Digital/film)
Serait-il possible de l'ajouter?

J'ai également voulu tester d'ajouter les données "spectral data" (Pour essai personnel) jusqu'à la ligne 114
mais il me semble qu'il y ait un conflit lorsqu'on arrive sur une ligne vide...

Elle ne me sont pas utiles aujourd'hui mais j'aurais voulu comprendre comment les ajouter par la suite si besoin
 
Dernière modification par un modérateur:

Discussions similaires