Bonjour le Forum.
J'ai un problème avec l'utilisation de Set dans ma macro.
Quand la syntaxe de ma macro est comme suit ça fonctionne :
L'inconvénient est l'utilisation d'Activate et ça demande plus d'une minute d’exécution de programme (environ 3000 Activate utilisés dans la boucle). J'essai d'enlever un maximum d'Activate possible afin d'optimiser le programme et que je teste le code suivant, ça ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Dim MaPlage2 As Range With Sheets("Feuil1") [...] Worksheets("Feuil2").Activate Set MaPlage2 = ActiveSheet.Range(Cells(1, 1), Cells(10, 1)) [...] End With
L'erreur qui m'est indiquée est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Dim MaPlage2 As Range With Sheets("Feuil2") [...] Set MaPlage2 = .Range(Cells(1, 1), Cells(10, 1)) ' Ou alors cette syntaxe : Set MaPlage2 = Worksheets("Feuil2").Range(Cells(1, 1), Cells(10, 1)) [...] End With
Je ne comprends pas parce que je suis dans un With Sheets("") et je place bien un point (.) devant le .Range.
Vos conseils et suggestions seront les bienvenues!. Merci d'avance !
BlackMountain
Partager