Besoin d'aide sur Worksheet_Change
Résolu
XLSuser
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
XLSuser Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
XLSuser Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
pour incrémenter un numéro de dossier j'ai écrit le macro suivant
Private Sub Worksheet_Activate()
Dim num As Integer
Range("c1").Select
num = Range("c1").Value
num = num + 1
Range("c1").Value = num
End Sub
A chaque fois que j'active la feuille, le numéro s'incrémente. J'aimerais pourtant incrémenter le numéro à chaque fois que la valeur d'une cellule contenant le nom du titulaire de dossier change.
Est ce que quelqu'un pourrait m'aider à combiner ce code avec worksheet_Change
Merci d'avance
Bruno
pour incrémenter un numéro de dossier j'ai écrit le macro suivant
Private Sub Worksheet_Activate()
Dim num As Integer
Range("c1").Select
num = Range("c1").Value
num = num + 1
Range("c1").Value = num
End Sub
A chaque fois que j'active la feuille, le numéro s'incrémente. J'aimerais pourtant incrémenter le numéro à chaque fois que la valeur d'une cellule contenant le nom du titulaire de dossier change.
Est ce que quelqu'un pourrait m'aider à combiner ce code avec worksheet_Change
Merci d'avance
Bruno
3 réponses
bonjour
ceci devrait aller
bonne suite
ceci devrait aller
Const celnom = "A1" Const celnum = "C1" Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range(celnom)) Is Nothing Then Range(celnum).Value = Range(celnum).Value + 1 End If End Sub
bonne suite
Bonjour a vous deux
Une autre version avec quelques controles:
Private Sub Worksheet_Change(ByVal Target As Range)
'cellules selectionnees C3 et C4 a changer suivant vos besoins
'cellule a incrementer C1
'test cellule C4: bonne cellule et changement de valeur et pas vide
'test cellule C3: memoire de la cellule C4 (prendre une cellule pour
'prise compte l'ouverture du classeur parce qu'une variable ne prend
'pas en compte l'ouverture du classeur)----> But: eviter les comptages intempestifs
'si cellule C4 ne change pas de valeur apres double click ou
'reouverture classeur et si cellule C4 ne change pas de valeur apres double click
If Not Application.Intersect(Target, Range("C4")) Is Nothing And _
Range("C4").Value <> Range("C3").Value And Range("C4").Value <> "" Then
Range("C1").Value = Range("C1").Value + 1
End If
Range("C3").Value = Range("C4").Value
End Sub
Bonne suite
Une autre version avec quelques controles:
Private Sub Worksheet_Change(ByVal Target As Range)
'cellules selectionnees C3 et C4 a changer suivant vos besoins
'cellule a incrementer C1
'test cellule C4: bonne cellule et changement de valeur et pas vide
'test cellule C3: memoire de la cellule C4 (prendre une cellule pour
'prise compte l'ouverture du classeur parce qu'une variable ne prend
'pas en compte l'ouverture du classeur)----> But: eviter les comptages intempestifs
'si cellule C4 ne change pas de valeur apres double click ou
'reouverture classeur et si cellule C4 ne change pas de valeur apres double click
If Not Application.Intersect(Target, Range("C4")) Is Nothing And _
Range("C4").Value <> Range("C3").Value And Range("C4").Value <> "" Then
Range("C1").Value = Range("C1").Value + 1
End If
Range("C3").Value = Range("C4").Value
End Sub
Bonne suite