Salut à tous !
Cela fait plusieurs années que je viens récupérer des réponses et des bouts de code ici, mais là je bloque (je n'ai pas fait de VBA depuis deux ans) et je viens vous demander vos lumières.
J'ai deux classeurs avec une quarantaine d'onglets (de A0 à A10 et d'autres avec des noms comme "fishing", "client_data" etc.) et je veux copier la colonne E du fichier 1 dans la colonne D du fichier 2, et ce pour chaque onglet. En grappillant à droite à gauche et dans mes cours de la fac, ceci marche pour un onglet :
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
30
Sub Importer()
 
    Dim Chemin As String, Fichier As String, Fichier2 As String
 Dim ENMaster As String
ENMaster = InputBox("Name of the EN master (the EN and FR files have to be in the same folder): ", "EN Master")
    '
    Dim wkb As Workbook
    Dim shFrom As Worksheet
    Dim shTo As Worksheet
    Dim varTab As Variant
    '
    '
    Chemin = ThisWorkbook.Path & Application.PathSeparator
    Fichier = "\" & ENMaster
 
 
    Set wkb = Workbooks.Open(Chemin & Fichier)
    Set shFrom = wkb.Worksheets("A2")
    Set shTo = ThisWorkbook.Worksheets("A2")
 
    Application.ScreenUpdating = False
 
 
 
    varTab = shFrom.Range(shFrom.Range("E1"), shFrom.Range("E1").End(xlDown))
    shTo.Range("D1").Resize(UBound(varTab), UBound(varTab, 2)) = varTab
 
 
 
End Sub
Par contre, je cale pour faire cela pour l'ensemble des onglets. La seule solution que j'ai et qui marche a été de copier-coller le tout en changeant le nom de l'onglet (A3, A4, fishing etc.). Ça marche, mais ce n'est pas beau et ça prend de la place.
Vous auriez des pistes pour régler cela ?
Merci !