Code en VBA

Résolu
jijudu Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   -  
xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour cher forum,


Est-ce que qq1 de vous connaîtrez le bout de code VBA pour dire :
Pour tous les fichiers de tel dossier faire
1) lire le nom du fichier
2) Si une partie de ce nom comporte un "OK" alors ........

je ne sais vraiment pas comment dire en VBA pour dire lire le nom du fichier etc .....
Merci
A voir également:

7 réponses

xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
tu fais un truc qui ressemble a ca:

Set fs = CreateObject("Scripting.FileSystemObject")
set rep = fs.getfoleder("nom repertoire")
for each fileitem in rep
msgbox(fileitem.Name)

next

pour ce qui est de la recherche du OK dans le nom... c'est un peu plus complique, je ne me souviens plus de la fonction associe!
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Tu a déja fait un essais de code ?
Si oui, montre ce que tu a déja fait.
A+
0
jijudu Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   3
 
Salut et merci,

Non j'ai réfléchi mais rien tenté ....
Ton code comporte un probléme :
Set fs = CreateObject("Scripting.FileSystemObject")
Set rep = fs.getfolder("C:\Calcul\Mauleon\Brut\Retranscri")
For Each fileitem In rep
MsgBox (fileitem.Name)

Next

car il affiche "propriété ou méthode non gérée par cet objet" à la ligne
For Each fileitem In rep

Merci
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Voir les sous fonctions de cette démo
A+
0

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

Posez votre question
Bidouilleu_R Messages postés 1181 Date d'inscription   Statut Membre Dernière intervention   295
 
Sub LitleDossier()
Dim fs, F, f1, s, sf
Dim Chemin As String


'mettre le nom du chemin
Chemin = "C:\Data"

Set fs = CreateObject("Scripting.FileSystemObject")
Set F = fs.GetFolder(Chemin)
Set sf = F.Files
For Each f1 In sf
If InStr(1, f1, "OK") > 0 Then ' il y a ok dans le nom du fichier
'mettre le reste du code ici

End If

Next

End Sub
0
xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
Ohhh j'avais pas pensé à utiliser la fonction InStr de cette facon pour detecter la présence d'une chaine de caractere dans une autre :-)
c'est cool ;)
0
Bidouilleu_R Messages postés 1181 Date d'inscription   Statut Membre Dernière intervention   295
 
Oups!
j'avais pas vu le post 4 de lermite222,
Désolé!
A+
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Mais non, mais non, faut pas être désolé.
il n'y a pas la fonction Instr() dans la démo.
Ca va lui permettre de complèter.
A+
0
jijudu Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   3
 
OK super vos exemples et le lien ont rendu la tache facile.

Merci
0