Code pour explorer fichier le suns àla suite des autres

loops02 Messages postés 9 Date d'inscription mercredi 16 novembre 2005 Statut Membre Dernière intervention 24 novembre 2005 - 16 nov. 2005 à 11:37
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 - 17 nov. 2005 à 10:49
Bonjour à tous,



je voudrais développé un petit script mais je ne sais pas du tout par quoi commencer.

Plusieurs fichiers sont stockés dans un repertoire et je voudrais les
ouvrir les uns à la suite des autres (une fois ouverts ils seront
fermés) jusqu'à ce tous fichiers du repertoire aient été ouverts et
fermés une fois.



Si quelqu'un peut m'aider!





merci à vous

10 réponses

olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
16 nov. 2005 à 12:04
en quel langage ?

Rollerman
0
loops02 Messages postés 9 Date d'inscription mercredi 16 novembre 2005 Statut Membre Dernière intervention 24 novembre 2005
16 nov. 2005 à 12:07
en vb ou vba !



merci
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
16 nov. 2005 à 12:11
salut,


Utilises un FileListBox (dans la barre d'outils classique de VB)











Dim l As Long

File1.Path = "C:\repertoire_qui_va_bien"

File1.Pattern = "*.*"



For l=0 to File1.ListCount-1

MsgBox File1.List(l)

Next l


Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
16 nov. 2005 à 12:13
Dim fichier As String
Dim mon_repertoire as string
mon_repertoire = App.Path & "\stock",
fichier = Dir$(mon_repertoire, vbDirectory)
While fichier <> ""
msgbox fichier
fichier = Dir$
Wend

autre remarque: vous cherchez jamais avant de mettre un post sur le forum ?????

Rollerman
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
loops02 Messages postés 9 Date d'inscription mercredi 16 novembre 2005 Statut Membre Dernière intervention 24 novembre 2005
16 nov. 2005 à 12:14
ok je teste ça et je te dis ça marche pour moi !



merci !
0
yohan_titi Messages postés 37 Date d'inscription lundi 15 mars 2004 Statut Membre Dernière intervention 6 décembre 2006
16 nov. 2005 à 12:14
J'ai eu besoin récemment de faire la meme chose. J'ai trouvé sur le site ce qu'il fallait que j'ai un peu adapté par rapport à ce que je devais faire. Le code ci-dessous :


Private Sub Bouton_Click()


Dim fso As New Scripting.FileSystemObject


Dim Dossier As Scripting.Folder


Dim SousDossier As Scripting.Folder


Set Dossier = fso.GetFolder("Le chemin du répertoire à parcourir")


For Each SousDossier In Dossier.SubFolders


Call SearchFile(SousDossier)


Next


End Sub


Private Sub SearchFile(ByVal StartPath As String)


Dim Search As String


Dim Filename As String


' Assure toi qu'il y est bien une barre oblique "" à la fin de StartPath


Search = Dir$(StartPath & "" & "*.txt")


If Search <> "" Then


Do


If (Search <> "." And Search <> "..") Then


' Chemin d'accès complet du fichier trouver


Filename = StartPath & "" & Search


' S'assurez que c'est bien un fichier(pas obligatoire)


If (GetAttr(Filename) And vbDirectory) <> vbDirectory Then


' Crée toi une procédure ou fonction pour traiter le fichier trouver en lui passant le fichier trouver en paramètre


Call ProcédureDeTraitement(Filename)


End If


End If


Search = Dir$() ' Recherche le prochain fichier


DoEvents


Loop Until Search = "" ' Boucle tant qu'il trouve des fichiers


End If


End Sub
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
16 nov. 2005 à 15:34
Bonjour,

Un exemple pour les fichiers texte.

Place sur ta Form 2 CommandButton (cmdImporter et cmdSauvegarder), un TextBox (propriété Multiligne à True) et une ListBox.

Le bouton cmdImporter rempli la ListBox avec les fichiers texte du
répertoire que tu as choisi(ici dans l'exemple C:\Mes documents).

En cliquant sur le nom d'un fichier dans la ListBox, le TextBox charge
les données, que tu peux visionner, modifier etc..., ensuite le bouton
cmdEnregistrer sauve les données du TextBox.

Option Explicit



Private Sub cmdImporter_Click()

Dim MyName

MyName = Dir("C:\Mes documents\*.txt*", vbNormal)

While MyName <> ""

List1.AddItem MyName

MyName = Dir

Wend

End Sub



Private Sub List1_Click()

Dim texte, crlf, tout, NomChemin, NomFichier, NomRep

crlf = Chr(13) + Chr(10)

NomChemin = "C:"

NomRep = "Mes documents"

NomFichier = List1.Text

Open NomChemin + NomRep + NomFichier For Input As #1

On Error Resume Next

Line Input #1, texte

tout = texte

If Len(tout) <> 0 Then

While Not EOF(1)

Line Input #1, texte

tout = tout + crlf + texte

Wend

End If

Text1.Text = tout

Close #1

End Sub



Private Sub cmdEnregistrer_Click()

Open "C:\Mes documents" & List1.Text For Output As #1

Print #1, Text1.Text

Close #1

Text1.Text = ""

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
loops02 Messages postés 9 Date d'inscription mercredi 16 novembre 2005 Statut Membre Dernière intervention 24 novembre 2005
17 nov. 2005 à 07:25
merci pour votre aide mais j'ai un nouveau souci (message s'adressant à jpleroisse).

Lorsque j'execute le script en mode debogage, arrivant à la 6ème ligne
"List1.AddItem MyName" j'ai un message du type "erreur d'execution 424,
objet requis". je ne vois pas d'où ça vient, j'ai selectionné toutes
les librairies dans excel et toujours rien. J'utilise Office 2000 et je
suis sur windows 2000.

Si vous savez d'où ça provient merci de m'aider !



merci encore
0
loops02 Messages postés 9 Date d'inscription mercredi 16 novembre 2005 Statut Membre Dernière intervention 24 novembre 2005
17 nov. 2005 à 09:34
je viens de lire vos scripts et j'ai l'impression que je me suis mal
expliquer ou alors que ce n'est pas possible de le faire en vba. Dejà
j'ai un problème lors de la compilation j'ai une erreur "Type défini
par l'utilisateur non defini" qui apparait lorsque je debug la ligne "Dim fso As New Scripting.FileSystemObject" du script.



Je ne sais pas d'où ça vient (J'utilise Office 2000 et Win2000).



Sinon ce que je voudrais faire est la chose suivante (c'est une macro qui s'executera en appuyant sur un bouton):

1-Ouvrir le premier fichier du dossier

2-Le fermer

3-Passer au fichier suivant du meme dossier

4-L'ouvrir

5-Le fermer etc...jusquà ce tout le dossier ait été scanné.



merci pour vos réponses !
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
17 nov. 2005 à 10:49
Bonjour,

J'avais fais le code pour VB6, en VBA sous Excel List1 devient
"ListBox1" et Text1 "TextBox1".Je vient d'essayer sous Excel et celà
fonctionne très bien.

Il n'y a aucune bibliothèque à placer.



Private Sub CommandButton1_Click()

Dim MyName

MyName = Dir("C:\Mes documents\*.txt*", vbNormal)

While MyName <> ""

ListBox1.AddItem MyName

MyName = Dir

Wend

End Sub



Private Sub ListBox1_Click()

Dim texte, crlf, tout, NomChemin, NomFichier, NomRep

crlf = Chr(13) + Chr(10)

NomChemin = "C:"

NomRep = "Mes documents"

NomFichier = ListBox1.Text

Open NomChemin + NomRep + NomFichier For Input As #1

On Error Resume Next

Line Input #1, texte

tout = texte

If Len(tout) <> 0 Then

While Not EOF(1)

Line Input #1, texte

tout = tout + crlf + texte

Wend

End If

TextBox1.Text = tout

Close #1

End Sub





jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
Rejoignez-nous