XL 2016 VBA, sélectionner ligne suivant cellule sélectionnée

cardi

XLDnaute Junior
Bonjour,

Etant débutant, je vous demande votre aide.

J'ai une macro pour retirer 1 à chaque fois que je lance la macro.

VB:
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, cela retire 1 dans la cellule X4.
Si je sélectionne la cellule A5, cela retire 1 dans la cellule X5....

Merci d'avance,

Cardi
 
Dernière édition:

fanfan38

XLDnaute Accro
Bonjour
Clic droit sur le nom de ta feuille
choisir "Visualiser le code"
Copier cette macro
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("X" & Target.Row).Value = Range("X" & Target.Row).Value - 1
End Sub

Par contre ta boucle for i=1 to 1 ça sert à rien...

A+ François
 

D.D.

XLDnaute Occasionnel
Bonjour

VB:
Sub moins()
On Error Resume Next
Selection.Offset(0, 23).Value = Selection.Offset(0, 23).Value - 1
End Sub
 

cardi

XLDnaute Junior
Merci mais j'ai du mal m'exprimer, je ne veux pas faire "-1" directement quand je vais dans une cellule de la colonne A.

Si je vais dans une cellule de la colonne A et que je lance la macro avec un bouton, là cela retire 1.
 

fanfan38

XLDnaute Accro
dans un module, en haut du module, juste après option explicit tu mets
dim lig as long
ensuite dans la macro
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
lig= Target.Row).Value
End Sub
et ta macro
Sub moins_un()
Cells(lig, 24) = Cells(lig, 24) -1
end sub
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas