Recherche de fichier ds un lecteur et s'il existe l'ouvrir
cs_jerome1983
Messages postés13Date d'inscriptionmercredi 14 avril 2004StatutMembreDernière intervention30 juin 2004
-
4 mai 2004 à 08:38
HFanny
Messages postés699Date d'inscriptionmercredi 19 février 2003StatutMembreDernière intervention13 mai 2011
-
4 mai 2004 à 09:16
Bonjour,
J'ai un piti problèm ou même un gro pour moi
Jai un repertoire CLIENT (se trouvant sur un lecteur Q) dans lequel il y a plusieur repertoire
CHANTIER1, CHANTIER2,.....CHANTIERn.
Dans chaque sous repertoire de CLIENT il y a un fichier excel nommé PIC_(nom du ss repertoire).xls
J'ai un fichier test.xls ou dedans il y a dans la colonne A plusieurs nom de chantier
En faite je dois parcourir ma colonne A et pour chaque nom de chantier faire:
ex : Supposons qu'en A1 il y est CHANTIER2
Je dois aller regarder dans CLIENT s'il y a un ss repertoire S'appellant CHANTIER2 si oui regarder si dans ce ss repertoire il ya le fichier excel correzspondant (PIC_CHANTIER2) si oui ouvrir le fichier excel
si le ss repertoire ou le fichier excel n'existe pas je dois passer au deuxième nom de chantier de ma colonne A
ps: il s'agit de VB sur excel
JE VOUS REMERCIE D'AVANCE SI VOUS POUVEZ M'AIDER CAR LA JE SUIS VRAIMENT BLOQUÉ ET JE NE SAIS VRAIMENT PAS FAIRE
A voir également:
Recherche de fichier ds un lecteur et s'il existe l'ouvrir
HFanny
Messages postés699Date d'inscriptionmercredi 19 février 2003StatutMembreDernière intervention13 mai 201120 4 mai 2004 à 09:16
Bonjour,
je viens d'écrire ce code qui devrait te permettre de faire ce que tu veux (je n'ai pas eu le temps de coder tout ce que tu voulais faire :-p )
Sub cherche()
Dim fs
Dim chemin, fichier As String
Set fs = CreateObject("Scripting.FileSystemObject")
Range("A1").Activate
While Not ActiveCell.Value = ""
chemin = "Q:\CLIENT" & ActiveCell.Value
If fs.FolderExists(chemin) Then
fichier = chemin & "\PIC_" & ActiveCell.Value & ".xls"
If fs.FileExists(fichier) Then
'Ici tu ouvres ton classeur
Else
'Ici tu enlèves le Else
End If
Else
'Ici tu enlèves aussi le Else
End If
ActiveCell.Offset(1, 0).Activate
Wend
End Sub