Boucle macro excel

Fermé
wallfr Messages postés 3 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 11 avril 2013 - Modifié par wallfr le 10/04/2013 à 16:46
wallfr Messages postés 3 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 11 avril 2013 - 11 avril 2013 à 09:18
Bonjour,

Je souhaite faire une boucle en VBA dans mon fichier Excel mais je ne trouve pas la solution à mon problème.

J'aimerai qu'à chaque fois que j'exécute ma macro mon nombre "n" augmente.
Exemple pour n = 1 :

- je lance ma macro pour la première fois, n = 2
- je lance ma macro pour la deuxième fois, n = 3
- je lance ma macro pour la troisième fois, n = 4

Est-ce possible ?

J'aimerai également pouvoir faire une macro en utilisant n à la place du numéro d'une cellule.
Exemple si je veux sélectionner la cellule B4 et que c'est la troisième fois que je lance ma ma macro : Range("Bn").Select au lieu de Range("B4").Select

Est-ce possible ?

Merci d'avance.

Cordialement,

wallfr

A voir également:

4 réponses

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
10 avril 2013 à 17:07
Bonjour,

Range("Bn").Select au lieu de Range("B4").Select

Range("B" & n).Select
0
wallfr Messages postés 3 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 11 avril 2013
10 avril 2013 à 17:13
Bonjour,

Merci pour votre réponse. Ma macro ressemble donc à ça :

Sub Test_Again()

n = n + 1

Range("B" & n).Select

End Sub


Mais à chaque fois que je clique sur le bouton (lié à la macro) la cellule B1 est sélectionnée. J'aimerai que lorsque je clique pour la 2eme fois sur le bouton, la cellule B2 soit sélectionnée.

Merci d'avance.

Cordialement,

wallfr
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
10 avril 2013 à 17:32
Bonjour,

C'est normal, il faut declarer la variable n public

public n as Long ' si doit aller au dela de 32767
Sub Test_Again()

n = n + 1

Range("B" & n).Select

End Sub

bonne suite
0
wallfr Messages postés 3 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 11 avril 2013
Modifié par wallfr le 11/04/2013 à 09:31
Merci, c'est parfait.

Dernière question, si je souhaite que la première valeur de n (lorsqu'on clique pour la première fois) ne soit pas 1 mais 7, que dois-je faire ?

Merci d'avance.

Cordialement,

wallfr
0