Changer une valeur d'une ActiveCell quand elle est égale à 0

  • Initiateur de la discussion Initiateur de la discussion Leskwal
  • 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 !

Leskwal

XLDnaute Occasionnel
Bonjour le Forum.

Malgré toute mes recherches, je n'ai pas trouvé ce que je cherchais.

Voici quelque chose qui s'en approche

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Intersect(Target, Range("A1:C10")) Is Nothing Then
    
    If ActiveCell.Value = "0" Then
    
        ActiveCell.Value = 1
        
    End If
    
End If

End Sub

Résumé : Quand je clique sur une cellule incluse dans la plage A1:C10 la valeur passe à 1 si la cellule à déjà la valeur 0.

Ce que je souhaite : lorsque je remplie une cellule par 0, incluse dans la plage donnée, lorsque je valide par "ENTER" ou en cliquant ailleurs, le test s'effectue et la cellule prends la valeur 1.

J'espère avoir été clair... 😱

Un grand MERCI d'avance

Pascal
 
Re : Changer une valeur d'une ActiveCell quand elle est égale à 0

Bonjour Pascal,

essaie ceci
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C10")) Is Nothing Then
If Target.Value = 0 Then
Target.Value = 1
End If
End If
End Sub

à
Phiilippe
 
Re : Changer une valeur d'une ActiveCell quand elle est égale à 0

Merci Philippe,

En fait j'avais déjà essayé cette solution qui fonctionne, mais il semble, à partir des lectures faites sur le forum qu'utiliser :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
testait en permanence la procédure et donc : ralentissement...

J'ai pu le vérifier à partir de mon fichier de travail où les plages de test sont très nombreuses.
C'est pour cette raison que j'utilise :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Sauf erreur de ma part : la procédure ne sera activée que si une action est faite sur la plage et c'est là où je Bute...

Suis-je dans l'erreur ?? 😱

Merci

Pascal
 
Re : Changer une valeur d'une ActiveCell quand elle est égale à 0

Re,

pour moi la procédure Worksheet_SelectionChange est déclenchée chaque fois qu'on change de cellule ( même si on n'y apporte pas de changement)

tandis que la procédure que je t'ai donnée (Worksheet_Change) se met en route uniquement lorsqu'on fait un changement dans une cellule
je pense que c'est donc la plus rapide

à+
Philippe
 
- 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

Discussions similaires

Réponses
9
Affichages
208
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
481
Réponses
4
Affichages
223
Retour