Microsoft 365 Macro qui mémorise une valeur, la modifie et la remet au second clic

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

pat66

XLDnaute Impliqué
Bonjour le forum,

merci d'avance pour votre aide,

Voici mon problème, je souhaite pouvoir réaliser une macro qui baisse le taux de 0.20 quel qu'il soit, déjà saisit dans N6 ou le remet

Exemple si :
Clic 1 : Si Feuil1.[N6] = 3.27% alors Feuil1.[N6] = 3.07%, Clic 2 revenir à 3.27% (revient au taux original)
Clic 1 : Si Feuil1.[N6] = 3.43% alors Feuil1.[N6] = 3.23%, Clic 2 revenir à 3.43% (revient au taux original)
etc......

un grand merci à tous
 
Solution
Bonjour,

VB:
Sub ToggleTaux()
    Dim tauxActuel As Double
    Static tauxOriginal As Variant ' variable persistante entre exécutions
    
    With Worksheets("Feuil1").Range("N35")
        tauxActuel = .Value
        If IsEmpty(tauxOriginal) Then
            ' Premier clic : on enregistre le taux initial et on le réduit de 0,20 point de pourcentage
            tauxOriginal = tauxActuel
            .Value = tauxActuel - 0.002
        Else
            ' Second clic : on rétablit le taux original et on réinitialise la variable
            .Value = tauxOriginal
            tauxOriginal = Empty
        End If
    End With
End Sub
Bonjour

à mon avis, ca va donner une usine à gaz pour pas grand chose==> il faut sauvegarder quelque part l'ancienne valeur
vérifier que tu fais un second clic sur la meme cellule....

pourquoi ne pas simplement ajouter un control type "spinbouton" qui permet d'incrémenter ou décrémenter la valeur de la cellule?
 
Bonjour

à mon avis, ca va donner une usine à gaz pour pas grand chose==> il faut sauvegarder quelque part l'ancienne valeur
vérifier que tu fais un second clic sur la meme cellule....

pourquoi ne pas simplement ajouter un control type "spinbouton" qui permet d'incrémenter ou décrémenter la valeur de la cellule?
Bonjour, je dois préciser que les clics se font sur une forme qui sert de bouton et pas dans une cellule

merci
 
Bonjour,

VB:
Sub ToggleTaux()
    Dim tauxActuel As Double
    Static tauxOriginal As Variant ' variable persistante entre exécutions
    
    With Worksheets("Feuil1").Range("N35")
        tauxActuel = .Value
        If IsEmpty(tauxOriginal) Then
            ' Premier clic : on enregistre le taux initial et on le réduit de 0,20 point de pourcentage
            tauxOriginal = tauxActuel
            .Value = tauxActuel - 0.002
        Else
            ' Second clic : on rétablit le taux original et on réinitialise la variable
            .Value = tauxOriginal
            tauxOriginal = Empty
        End If
    End With
End Sub
 
- 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
Retour