VBA remplacer saisie date en fin de mois

Bonjour à tous,

Je souhaite modifier la saisie d'une cellule précise, ici E1 en y mettant la fin du mois,

Le fichier joint fonctionne mais j'ai du ajouter après recherche sur les forums le code suivant qui désactive les évènements :

Application.EnableEvents = False

en début de procédure et celui ci

Application.EnableEvents = True

en fin de procédure,

Le hic, je pense que c'est pour masquer le fait que mon code soit mal écrit,

Merci d'avance pour votre aide,

Cordialement,

Bonjour,

En effet il peut être utile d'utiliser cette ligne pour éviter que le code tourne en boucle. En voici une explication :

Il peut être parfois utile de désactiver les événements ... Imaginez par exemple que l'événement Worksheet_Change (qui se déclenche après une modification dans la feuille) soit utilisé pour modifier la cellule A1 de cette même feuille.

Dans un tel cas, à la première modification d'une cellule de cette feuille, la cellule A1 sera modifiée ... Mais puisque la cellule A1 est modifiée, l'événement est déclenché de nouveau ... La cellule A1 sera donc modifiée une nouvelle fois et redéclenchera encore l'événement ... Et ainsi de suite ... Créant une boucle infinie et un beau plantage d'Excel.

Il faut donc éviter ici de déclencher l'événement lorsque A1 est modifié.

Sinon ta ligne de code est correcte

bonjour,

Le hic, je pense que c'est pour masquer le fait que mon code soit mal écrit,

non, c'est pour tenir compte du fonctionnement normal de la gestion des événement en excel.

l'événement worksheet.change, déclenche la macro associée, dès qu'il y a un changement sur la feuille. Quand tu modifies une cellule de la feuille, la macro est lancée, celle-ci modifie une cellule de la feuille, ce qui lance la macro (et cela en boucle infinie jusqu'à ce que cela provoque une erreur ou t'oblige à tuer ta session excel.) Pour éviter ce problème, il faut suspendre la gestion des événements avant l'instruction de modification de la cellule de la feuille et la réenclencher une fois la modification effectuée. d'où les 2 instructions que tu as ajoutées.

Merci pour vos retours,

Je conserve donc le code ;),

Bonne journée à vous,

Cordialement,

Rechercher des sujets similaires à "vba remplacer saisie date fin mois"