Bonjour,
Je suis entrain de faire plusieurs macros dans un programme de traitement de données. Je voudrais maintenant afin d'éviter un copier/coller depuis plusieurs fichiers sources vers un fichier destination faire une macro. J'ai déjà commencé, mais je rencontre deux problèmes :
1. Je suis obligé à chaque fois de cliquer sur "Oui" pour garder les valeurs copiées, puisque je ferme le 1er fichier source
2. Lorsque j'ai défini la 1ère cellule vide de mon fichier de destination, je n'arrive pas à reprendre la valeur de la variable pour me positionner au bon endroit avant de coller

J'ai cherché sur le Net, il y a plusieurs solutions...mais j'y arrive pas!
Merci de votre aide.

Voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub TraiteFichiers()
'Application.ScreenUpdating = False
Dim Chemin As String, File As String
Dim DerniereLigneFichierACopier As String
Dim DerniereCelluleColonneARecap As String
Dim wb2 As Workbook
 
'FileRecap = "Programme_Cyto_Intégration.xlsm"
Chemin = "C:\Temp\VBA"
File = Dir(Chemin & "\*.xls*")
 
    C = 1
        Do While File <> ""
            Cells(C, 1) = File
            File = Dir()
                Workbooks.Open Filename:=Chemin & "\" & File
                DerniereLigneFichierACopier = Range("A1").SpecialCells(xlCellTypeLastCell).Row
                Range("A1:C" & DerniereLigneFichierACopier).Copy 'je copie les données du fichier qui vient d'être ouvert
                Set wb2 = ActiveWorkbook
                wb2.Close 'je ferme le fichier qui vient d'être ouvert
                'Ici 1er problème je dois cliquer sur "Oui" pour garder les valeurs dans le clipboard
                Windows("Programme_Cyto_Intégration.xlsm").Activate 'j'active le fichier dans lequel je veux coller les valeurs
                Sheets("CollageCato").Select 'je sélectionne l'onglet où je veux coller les valeurs
                DerniereCelluleColonneARecap = Range("A" & Rows.Count).End(xlUp).Row + 1 'je définis la 1ère cellule vide de la colonne A
                'Ici 2ème problème je n'arrive pas à me positionner sur la valeur de la variable "DerniereCelluleColonneARecap"
                ActiveSheet.Paste
            C = C + 1 'je continue avec le prochain fichier 
        Loop
End Sub