[VB/Excel]Comparer liste excel avec liste de fichiers
Comparer liste excel avec liste de fichiers [VB/Excel] - VB/VBA/VBS - Programmation
MarshPosté le 23-06-2010 à 17:54:36
Hello !
Voila, je cherche à faire une manip' un peu particulière. Je possède un classeur Excel A, il possède dans une feuille une liste de nom qui correspondent à des projets. Dans un repertoire B, j'ai un ensemble de fichiers excel. A chaque projet de A peut correspondre un fichier Excel. Je n'ai pas forcément un fichier excel par projet.
Ce que je voudrai, c'est dans le fichier excel A, avoir une colonne qui m'indique si dans le repertoire B un fichier excel relatif à chaque projet présent dans la liste existe ou non.
Pour le moment, j'arrive à enregistrer la liste des fichiers présents dans le répertoire B dans un fichier texte. Les noms de projets dans A sont identiques au nom des fichiers dans le repertoire B, seul l'extension ".xls" apparait quand je créé mon fichier texte.
J'ai trouvé et d'une manière plus simple que par laquelle j'ai commencé !
en gros :
Code :
Sub VeriffileExist(folder As String) 'en entrée de la fonction, j'ai le chemin qui doit contenir chaque fichier.xls
'
'Purpose : Ensure that a file related to the list exist in the xls file folder
'
Dim fso As Object, x As Boolean
Dim nbfile As Integer
Dim i As Integer
Dim fileName As String
nbfile = Application.WorksheetFunction.CountA(Range("A2:A65536" )) 'Définie le nombre de fichiers qui sont dans la liste initiale
For i = 2 To (nbTracker + 1) 'Boucle passe en révue chaque ligne de la liste et regarde si un fichier qui porte le meme nom.xls est présent dans le folder que l'on veut inspecter
fileName= Sheets("file_monitoring" ).Range("A" & i).value 'file_monitoring est la feuille qui contient la liste de tous les fichier
Set fso = CreateObject("Scripting.FileSystemObject" )
x = fso.FileExists(folder & "\" & file_monitoring& ".xls" )
If x = True Then Sheets("file_monitoring" ).Range("B" & i).value = "Created"
If x = False Then Sheets("file_monitoring" ).Range("B" & i).value = "none"
x = False 'réinitialise la variable x (mais pas sur que ça soit nécessaire)
Marsh Posté le 23-06-2010 à 17:54:36
Hello !
Voila, je cherche à faire une manip' un peu particulière.
Je possède un classeur Excel A, il possède dans une feuille une liste de nom qui correspondent à des projets.
Dans un repertoire B, j'ai un ensemble de fichiers excel. A chaque projet de A peut correspondre un fichier Excel.
Je n'ai pas forcément un fichier excel par projet.
Ce que je voudrai, c'est dans le fichier excel A, avoir une colonne qui m'indique si dans le repertoire B un fichier excel relatif à chaque projet présent dans la liste existe ou non.
Pour le moment, j'arrive à enregistrer la liste des fichiers présents dans le répertoire B dans un fichier texte.
Les noms de projets dans A sont identiques au nom des fichiers dans le repertoire B, seul l'extension ".xls" apparait quand je créé mon fichier texte.
Une idée de comment faire via VB ?