Macro : Incrémenter une suite logique

  • Initiateur de la discussion Initiateur de la discussion SWEAT
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

SWEAT

Guest
Bonjour,

J'aimerai trouver une astuce pour qu'après avoir mis la valeur de la cellule A4 il me mette la valeur suivante avec l'exemple suivant : 1, 2, 3... comment lui dire qu'après il passe pour que A4 = 2, A4 = 3, A4=4... car après chaque valeur j'aimerai exécuter une autre macro pour éviter de recopier ceci pour chaque valeur le maximum sera de 300.

Range("A4").Select
ActiveCell.FormulaR1C1 = "1"
Range("A4").Select
ActiveCell.FormulaR1C1 = "2"
Range("A4").Select
ActiveCell.FormulaR1C1 = "3"
...
Merci beaucoup pour votre aide.
 
Bonjour
Quel est le but :
que ça réagisse à chaque saisie ?
Dans ce cas il faut associer le code à la feuille et ne pas le mettre dans un module
le procedure doit s'appeler
Private Sub Worksheet_Change(ByVal Target As Range)

recherche sur ce forum et dans l'aide les macros événementielles.

Chris
 
Bonjour Chris, Colt, le Forum

J'espère que vous avez tous et toutes passés une bonne fête de la musique ...

Pour Sweat, en fait, tout dépend du type d'action que tu souhaites pour déclencher cette procédure, car tu n'es pas clair sur ce que tu veux.

Dans les Privates Module du Classeur tu as différents moyens de déclenchement de macro évènementielles :
"ThisWorkBook" permettant, par exemple, de déclencher un code à l'ouverture du classeur "Workbook_Open", ou à la fermeture "Workbook_BeforeClose", ou encore à chaque activation (changement) de feuilles "Workbook_SheetActivate"...

Dans chacune des feuilles tu as aussi un Private Module permettant de capter des évènements tels que "Calculate" ou encore "SelectionChange"

Par exemple :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A4") = Range("A4").Value + 1
End Sub

Ce code incrémentera de "+ 1" la valeur de la cellule "A4" à chaque fois que tu changeras de sélection dans la Feuille où tu auras mis ce code...

Pour accéder à un Private Module de Feuille, depuis Excel, Click Droit sur l'Onglet de la Feuille, puis, "Visualiser le Code"...

Sinon il y a d'autres moyens, mais tu n'as pas été assez précis.

Bon Appétit
@+Thierry
 
Merci pour vos infos mais elles ne m'aident pas beaucoup. En fait ce que je veux c'est que la cellule s'ajoute d'1 à chaque fois (la 1ere réponse de Christophe est très bien la dessus) mais ensuite une fois qu'elle a ajouté 1 je veux qu'elle exécute une macro que j'ai mis en place (ce qui marche très bien) mais cela ne fonctionne que une fois. Il faut à chaque fois que je clique sur le bouton pour qu'elle éxecute ma macro en fait je voudrai qu'elle l'éxecute en boucle.

Merci pour votre aide (si vous ne comprenez pas c'est pas grave je suis sur le bon chemin et je crois que je ne vais pas tarder à trouver)
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
543
Réponses
7
Affichages
287
Réponses
4
Affichages
442
Retour