[VBA] Code évènementiel qui fonctionne qu'une fois par feuille

MaitrePoul

XLDnaute Nouveau
Bonjour à tous,

Je suis en train d'essayer de rajouter une fonction à un de mes fichiers excel mais je bute un peu sur les évènements en VBA, je m'explique :
Je voudrais qu'un msgbox survienne que dans des conditions bien précises, c'est à dire :
-A la modification d'une cellule d'une feuille
-Qu'une seule fois par feuille mais si l'on change de feuille et l'on revien sur la feuille précédente le message revient à la modification d'une cellule de celle-ci
-Lorsque le mois de l'année de la date d'aujourd'hui ne correspond pas au mois de la feuille => j'ai une feuille par mois (ça j'ai pas de souci j'ai réussi à le coder)

Je sais que pour la modification d'une cellule il faut que j'utilise l'évènement :
Sub Worksheet_Change(Target as Range)

Mais comment faire en sorte qu'il marche qu'une seule fois et que lorsque l'on change de feuille il puisse revenir ?

Merci pour vos réponses.
 

ERIC S

XLDnaute Barbatruc
Re : [VBA] Code évènementiel qui fonctionne qu'une fois par feuille

Bonjour

sans avoir testé :

tu utilises une cellule, quand elle est vide tu actives le code, sinon tu sors de ton code
quand le code es il fonctionne tu écris un 1 dans la cellule
quand tu quittes la feuille (deactivate) ou que tu l'actives tu efface ce 1

Code:
Private Sub Worksheet_Activate()
Range("G1").ClearContents
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then Exit Sub
If Range("G1").Value = "" Then
    Range("G1").Value = 1
    MsgBox "code actif"
End If
End Sub
 
Dernière édition:

MaitrePoul

XLDnaute Nouveau
Re : [VBA] Code évènementiel qui fonctionne qu'une fois par feuille

Bon bah ça marche très bien merci !
Juste une chose ça ma rajouté une bibliothèque "funcres" dans visual basic
Je suppose qu'elle est utile pour ces fonctions.
Suis-je sûr de ne pas avoir de souci de compatibilité avec des versions plus récentes que excel 2003 et des pc avec excel configuré en anglais, chinois ou autre langue ?
 

Discussions similaires

Réponses
2
Affichages
230
Réponses
21
Affichages
568

Statistiques des forums

Discussions
312 963
Messages
2 093 992
Membres
105 906
dernier inscrit
aifa