Bonjour à tous,
Etant encore débutant avec VBA et n'ayant pas trouver de solutions à mon problème malgré les nombreuses recherches sur le forum (qui m'ont déjà pas mal aidées à avancer jusqu'à maintenant d'ailleurs), je me permet de poser ma question
J'essaye de construire une petite base de données qui va me permettre de filtrer une autre beaucoup plus grosse base de données qui est issue d'un logiciel.
Pour mon programme, j'utilise essentiellement des vlookup et des copier/coller de colonnes.
Mon problème est qu'a force de rajouter des lignes de "copier/coller" dans mon programme, je n'arrive même plus à le compiler correctement tellement ca rame d'autant que j'aimerais lui en rajouter encore...
Je pense qu'il serait judicieux d'utiliser des boucles dans mon execution mais malgré de nombreux essais, je n'arrive pas à trouver celle qui execute correctement les "copiers/collés" dont j'ai besoin et SURTOUT qui feraient accélerer le chmilblick
Voici, ci dessous, un extrait de mon programme:
Je vous remercie déjà d'avance pour l'aide que vous pourrez m'apporter
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 Private Sub CommandButton12_Click() ' Cache des données lorsque Excel travaille oldStatusBar = Application.DisplayStatusBar Application.DisplayStatusBar = True Application.StatusBar = "En Cours..." 'dans la barre d'etat With Application .Calculation = xlManual .MaxChange = 0.001 End With Application.ScreenUpdating = False 'Copie des colonnes "pool" et "tata" depuis "pills" dans l'onglet "correlation des bases" Worksheets("pills").Range("G1:G8000").Copy Worksheets("corrélation des bases").Range("C1") Worksheets("pills").Range("X1:X8000").Copy Worksheets("corrélation des bases").Range("D1") 'Copie des colonnes "pool", "time" et " time2" depuis " site " dans l'onglet "correlation des bases" Worksheets("site ").Range("A1:A8000").Copy Worksheets("corrélation des bases").Range("F1") Worksheets("site ").Range("A1:A8000").Copy Worksheets("corrélation des bases").Range("AK1") Worksheets("site ").Range("AI1:AI8000").Copy Worksheets("corrélation des bases").Range("AL1") Worksheets("site ").Range("AG1:AG8000").Copy Worksheets("corrélation des bases").Range("AM1") 'Copie des colonnes "pool" et " model " depuis " model2" dans l'onglet "correlation des bases" Worksheets("model2").Range("B1:B8300").Copy Worksheets("corrélation des bases").Range("I1") Worksheets("model2").Range("G1:G8300").Copy Worksheets("corrélation des bases").Range("J1") 'Copie des colonnes " tata ", "SC1", "SC2" et " SC3" depuis " open " dans l'onglet "correlation des bases" Worksheets("open ").Range("A1:A8000").Copy Worksheets("corrélation des bases").Range("L1") Worksheets("open ").Range("F1:F8000").Copy Worksheets("corrélation des bases").Range("M1") Worksheets("open ").Range("G1:G8000").Copy Worksheets("corrélation des bases").Range("N1") Worksheets("open ").Range("E1:E8000").Copy Worksheets("corrélation des bases").Range("O1") 'Copie des colonnes "pool", "tata" et "sort" depuis " model2" dans l'onglet "correlation des bases" Worksheets("model2").Range("A1:A8300").Copy Worksheets("corrélation des bases").Range("AZ1") Worksheets("model2").Range("B1:B8300").Copy Worksheets("corrélation des bases").Range("BA1") Worksheets("model2").Range("F1:F8300").Copy Worksheets("corrélation des bases").Range("BB1") 'Affichage de l'onglet "corrélation des bases" ActiveWorkbook.Worksheets("corrélation des bases").Select 'Appel des macros nécessaire à la corrélation des bases Call Correlation 'Affichage du tableau de bord ActiveWorkbook.Worksheets("Tableau de bord").Select With Application .Calculation = xlAutomatic .MaxChange = 0.001 End With 'Fin de procédure de cache Application.ScreenUpdating = True Application.StatusBar = oldStatusBar End Sub
Partager