Bonjour,
Je poste car il m'arrive quelque chose d'incompréhensible.
J'utilise une simple macro VBA pour remettre en forme mes lignes après application d'un filtre et un tri.
Comme la liste peut être longue dans certains cas, je veux qu'à la fin de la macro, la cellule 1,1 soit sélectionnée pour afficher le haut du tableau.
Avec la commande :Mais celle-ci s’exécute avant une boucle Do While Loop, alors qu'elle est tout à la fin du code et hors de la boucle bien entendu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Cells(1, 1).Select
Avant la boucle, je sélectionne la cellule (2,3) pour que la boucle fasse défiler les cellules de la colonne 3.
Tout fonctionne bien avec le code ci-dessous :
Or avec le code ci-dessous (ajout de Cells(1, 1).Select à la fin), la macro fait défiler les cellules de la colonne 1 !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub CommandButton1_Click() Dim numero As Integer lignes = Cells(1, 2).Value numero = 1 Cells(2, 3).Select Do While numero <= lignes + 1 SendKeys "{F2}" SendKeys "{ENTER}" numero = numero + 1 Loop End Sub
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub CommandButton1_Click() Dim numero As Integer lignes = Cells(1, 2).Value numero = 1 Cells(2, 3).Select Do While numero <= lignes + 1 SendKeys "{F2}" SendKeys "{ENTER}" numero = numero + 1 Loop Cells(1, 1).Select End Sub
Partager