Bonjour,
J'ai deux classeurs: un classeur "source" et classeur "destination".
Je veux récupérer des données de "Source" pour les intégrer à "Destination".
Les adresse de cellules que je veux traiter ne sont pas identiques d'un classeur à l'autre, mais les données sont organisées de manière cyclique. J'ai donc utiliser une boucle FOR.
Le code ne bug pas, mais dans mon classeur "destination" je me retrouve avec la dernière valeur de ma source copié dans les emplacement indiqués au lieu d'avoir une valeur différente à chaque fois.
Pouvez-vous me dire ce qui ne va pas dans mon code?
(Je n'ai eu que 3 jours de formation VBA, veuillez accepter mes excuses pour mes défauts de codage et d'explication!)
Merci à vous,
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
31
32
33
34
35
36
37 Sub IntegrationDonnees() Dim WbDestination As Workbook Dim WbSource As Workbook Dim WsDestination As Worksheet Dim WsSource As Worksheet Dim LigneSource As Integer Dim LigneDestination As Integer Set WbDestination = Application.Workbooks("DestinationTEST.xlsm") Set WbSource = Application.Workbooks("SourceTEST.xlsm") Set WsDestination = WbDestination.Worksheets("Destination") Set WsSource = WbSource.Worksheets("Source") WsSource.Activate For LigneSource = 2 To 9 Step 2 For LigneDestination = 2 To 21 Step 5 WsSource.Cells(LigneSource, 3).Select Selection.Copy WsDestination.Cells(LigneDestination, 3).PasteSpecial Next LigneDestination Next LigneSource Set WbDestination = Nothing Set WbSource = Nothing Set WsDestination = Nothing Set WsSource = Nothing MsgBox ("Intégration de données réussies") End Sub
Salomé
Partager