VBA, modifier une valeur sur la même ligne sélectionnée

Bonjour,

Etant débutant, je vous demande votre aide.

J'ai une macro pour retirer 1 à chaque fois que je lance la macro en cliquant sur un bouton.

Sub moins_un()

Dim moins_un As Integer

        For i = 1 To 1

            moins_un = Cells(3, 24) - i

            Cells(3, 24) = moins_un
        Next i

End Sub

Cela retire 1 toujours dans la cellule X3.

J'aimerai que si je sélectionne la cellule A4 et que je clique sur le bouton, cela retire 1 dans la cellule X4.

Si je sélectionne la cellule A5 et que je clique sur le bouton, cela retire 1 dans la cellule X5....

Merci d'avance,

Cardi

Bonjour,

tu peux étudier ceci, normalement ça devrait faire le job

sub moins_test()
    ActiveCell = ActiveCell - 1
end sub

Cordialement.

Bonjour,

il faut pour cela remplacer:

Cells(3, 24)

par

ActiveCell

ActiveCell renvoie directement à la cellule active

D'ailleurs je me permet de corriger un peu ton code:

Sub moins_un()
ActiveCell = ActiveCell - 1
End Sub

La boucle ainsi que le reste ne sont pas nécessaires comme tu peux le voir, tu n'as pas besoin de répéter l'action, et l'utilisation d'une variable n'est ici pas requis car tu n'utilises la valeur -1 qu'une seule fois aussi

Merci mais je souhaite que si je sélectionne la cellule "A6" par exemple, cela fasse -1 dans la cellule "X6" et non dans "A6".

Désolé j'ai lu trop vite (je ne crois pas être le seul d'ailleurs )

et voilà !

Sub moins_un()
    Range("X" & ActiveCell.Row) = Range("X" & ActiveCell.Row) - 1
End Sub

Si tu as des questions n'hésites pas !

Cordialement.

Re,

ah j'avais mal lu:

Sub moins_un()
range("x" & ActiveCell.row) =range("x" & ActiveCell.row) - 1
End Sub

@vince1512: oui tu n'es pas le seul

Parfait merci !

Rechercher des sujets similaires à "vba modifier valeur meme ligne selectionnee"