Bonjour à tous,
Voici mon problème : dans un fichier Excel "maître", je cherche à synthétiser des informations contenues dans d'autres fichiers Excel (tous au même format, puisqu'il s'agit de formulaires à remplir).
J'ai trouvé sur les forums une macro qui me permet de chercher tous les fichiers Excel contenus dans un certain dossier, et de copier sur mon fichier "maître" les informations "Windows" relatives à ces fichiers (date de création, lien hypertexte vers ce fichier etc). Jusque là tout va bien, puisque j'ai besoin de copier ces informations aussi...
Seulement, j'aimerais en plus récupérer des infos contenu dans les fichiers Excel en question (dans des cellules spécifiques des feuilles du fichier), et là j'ai un souci car la macro originale ne me permet pas de pouvoir ouvrir le fichier et de lire les infos dans les cellules (ou du moins j'ignore comment faire).
J'ai écumé les sujets sur le forum, sans trouver de réelles réponses à mon problèmes, et après de multiples tentatives de recopiage de code, je décide de demander votre aide !!
Voici le bout de code qui pose problème :
	
	
	
	
	
		
Je vous remercie d'avance car là je bloque vraiment !
	
		
			
		
		
	
				
			Voici mon problème : dans un fichier Excel "maître", je cherche à synthétiser des informations contenues dans d'autres fichiers Excel (tous au même format, puisqu'il s'agit de formulaires à remplir).
J'ai trouvé sur les forums une macro qui me permet de chercher tous les fichiers Excel contenus dans un certain dossier, et de copier sur mon fichier "maître" les informations "Windows" relatives à ces fichiers (date de création, lien hypertexte vers ce fichier etc). Jusque là tout va bien, puisque j'ai besoin de copier ces informations aussi...
Seulement, j'aimerais en plus récupérer des infos contenu dans les fichiers Excel en question (dans des cellules spécifiques des feuilles du fichier), et là j'ai un souci car la macro originale ne me permet pas de pouvoir ouvrir le fichier et de lire les infos dans les cellules (ou du moins j'ignore comment faire).
J'ai écumé les sujets sur le forum, sans trouver de réelles réponses à mon problèmes, et après de multiples tentatives de recopiage de code, je décide de demander votre aide !!
Voici le bout de code qui pose problème :
		Code:
	
	
	Sub ListeFichiers(Repertoire As String)
    'Nécessite d'activer la référence "Microsoft Scripting RunTime"
        'Dans l'éditeur de macros (Alt+F11):
        'Menu Outils
        'Références
        'Cochez la ligne "Microsoft Scripting RunTime".
        'Cliquez sur le bouton OK pour valider.
    
    Dim Fso As Scripting.FileSystemObject
    Dim SourceFolder As Scripting.Folder
    Dim SubFolder As Scripting.Folder
    Dim FileItem As Scripting.File
    Dim i As Long
    
    Set Fso = CreateObject("Scripting.FileSystemObject")
    Set SourceFolder = Fso.GetFolder(Repertoire)
    
    'Récupère le numéro de la dernière ligne vide dans la colonne A.
    i = Range("A65536").End(xlUp).Row + 1
    
    'Boucle sur tous les fichiers du répertoire
    If Genre = APA Then
        For Each fichier In SourceFolder.Files
            'Récupère que les fichiers Excel, créés sous le nouveau format d'APA (après le 01/08/2012)
            If FileItem.Name Like "?*.xls" And CDate(Format(FileItem.DateCreated, "dd/mm/yyyy")) > DateValue("01/08/2012") Then
            'Ajoute un lien hypertexte vers le fichier
            ActiveSheet.Hyperlinks.Add Anchor:=Cells(i, 7), _
            Address:=FileItem.ParentFolder & "\" & FileItem.Name
            'Indique la date de création du fichier
            Cells(i, 8) = FileItem.DateCreated
            FileItem.Open     'Cette ligne pose problème dans la macro, puisqu'il n'arrive pas à ouvrir le fichier...
            DateO = ActiveWorkbook.Sheets("formulaire").Range("D17").Text
            Intitule = ActiveWorkbook.Sheets("formulaire").Range("C6").Text
            Secteur = ActiveWorkbook.Sheets("formulaire").Range("D15").Text
            a = 0
            'Boucle pour compter les actions ouvertes
            For k = 45 To 48
                If Cells(k, 6) <> "" Then a = a + 1
                End If
            Next
            NbreO = a
            'Boucle pour compter les actions clôturées
            b = 0
            For L = 45 To 48
                If Cells(L, 15) <> "" Then b = b + 1
                End If
            Next
            NbreC = b
            DateC = ActiveWorkbook.Sheets("formulaire").Range("N19").Text
            
            'Inscrit la date de l'APA dans la 1ère cellule du fichier maître
            ThisWorkbook.Sheets("APA").Cells(i, 1) = DateO
            'Indique le libellé de l'APA (intitulé de la panne)dans la 2nde cellule
            ThisWorkbook.Sheets("APA").Cells(i, 2) = Intitule
            'Indique le secteur de l'APA
            ThisWorkbook.Sheets("APA").Cells(i, 3) = Secteur
            'Indique le nombre d'actions ouvertes
            ThisWorkbook.Sheets("APA").Cells(i, 4) = NbreO
            'Indique le nombre d'actions clôturées
            ThisWorkbook.Sheets("APA").Cells(i, 5) = NbreC
            'Indique la date de clôture
            ThisWorkbook.Sheets("APA").Cells(i, 6) = DateC
            i = i + 1
            End If
            FileItem.Close
        Next FileItem
.....
	Je vous remercie d'avance car là je bloque vraiment !