Lulu_bistify
XLDnaute Nouveau
Bonjour à tous !
Je me permets de faire appel à votre aide car je suis bloqué sur un petit programme que je dois réaliser en Visual Basic qui doit :
-Fouiller un dossier contenant des sous-dossiers contenants parfois des fichiers CSV
-Si fichiers CSV il y a, je dois prendre toutes les infos (elles sont sur la 1ère colonne)
-Et mettre toutes les infos dans 1 seul fichier CSV
Je débute en Visual Basic, j'ai récupéré le TP sur l'arborescence des fichiers sur le site du zéro en me disant:
- je scanne tout, je regarde à chaque fois qu'un fichier termine par ".csv", je sauvegarde dans un tableau puis après pour chaque entrée dans le tableau j'ouvre le lien je copie tout et je colle.
Malhereusement il ne fait pas ce que je demande, je me demandais pourquoi ? (j'ai pas encore fait la partie Excel, je voulais dans un premier temps afficher dans une textbox les différents fichiers CSV.)
Merci d'avance,
Lulu
Je me permets de faire appel à votre aide car je suis bloqué sur un petit programme que je dois réaliser en Visual Basic qui doit :
-Fouiller un dossier contenant des sous-dossiers contenants parfois des fichiers CSV
-Si fichiers CSV il y a, je dois prendre toutes les infos (elles sont sur la 1ère colonne)
-Et mettre toutes les infos dans 1 seul fichier CSV
Je débute en Visual Basic, j'ai récupéré le TP sur l'arborescence des fichiers sur le site du zéro en me disant:
- je scanne tout, je regarde à chaque fois qu'un fichier termine par ".csv", je sauvegarde dans un tableau puis après pour chaque entrée dans le tableau j'ouvre le lien je copie tout et je colle.
Malhereusement il ne fait pas ce que je demande, je me demandais pourquoi ? (j'ai pas encore fait la partie Excel, je voulais dans un premier temps afficher dans une textbox les différents fichiers CSV.)
Merci d'avance,
Lulu
Code:
Imports System.IO
Public Class Form1
Dim RepertoireALister As String
Dim nombrecsv As Integer = 0
Dim resultat As Integer = 0
Dim listefichierscsv() As String
Dim message, title, defaultValue As String
Dim myValue As Object
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
message = "Veuillez entrer le chemin du dossier à traiter"
title = "Dossier concerné"
defaultValue = "1"
myValue = InputBox(message, title, defaultValue)
RepertoireALister = myValue
'Définit le premier noeud
Me.TV_ARBORESCENCE.TopNode = Me.TV_ARBORESCENCE.Nodes.Add(RepertoireALister, RepertoireALister)
'Arborescence du premier noeud
For Each Repertoire As String In Directory.GetDirectories(RepertoireALister)
Me.TV_ARBORESCENCE.TopNode.Nodes.Add(Repertoire, Path.GetFileName(Repertoire))
'Récursif
ListeArborescenceDossier(Repertoire, Me.TV_ARBORESCENCE.TopNode)
Next
'Fichiers du premier noeud
For Each Fichier As String In Directory.GetFiles(RepertoireALister)
Me.TV_ARBORESCENCE.TopNode.Nodes.Add(Path.GetFileName(Fichier))
Next
Me.L_nombrecsv2.Text = nombrecsv.ToString
For i As Integer = 0 To listefichierscsv.Length - 1
TB_fichiersCSV.Text = listefichierscsv(i)
Next
End Sub
Sub ListeArborescenceDossier(ByVal RepertoireActuel As String, ByVal NodeActuel As TreeNode)
'Recupère le node dans lequel on est
Dim Node As TreeNode = NodeActuel.Nodes(RepertoireActuel)
'Répertoires de ce noeud
For Each Repertoire As String In Directory.GetDirectories(RepertoireActuel)
Node.Nodes.Add(Repertoire, Path.GetFileName(Repertoire))
'Récursif
ListeArborescenceDossier(Repertoire, Node)
Next
'Fichiers de ce noeud
For Each Fichier As String In Directory.GetFiles(RepertoireActuel)
Node.Nodes.Add(Path.GetFileName(Fichier))
If resultat = InStr(Path.GetFileName(Fichier), ".CSV") = 0 Then
ReDim listefichierscsv(nombrecsv)
listefichierscsv(nombrecsv) = Path.GetFileName(Fichier).ToString
nombrecsv = nombrecsv + 1
resultat = 1
End If
Next
End Sub