Définition de variables

Bonjour,

J'aimerais savoir j'utilise Private Sub Worksheet_SelectionChange(ByVal Target As Range) et j'appelle une sous routine

Sub Sous_routine1 ()

End Sub

Est-ce de cette façon que je dois la définir??

J'utilise Target.Row et la valeur ne suis pas dans la sous routine??

Comment faire pour que je puisse utiliser Target.Row de la routine principal à la sous-routine??

J'utilise Option Explicit au début et les variables sont définies avant la routine principale

Merci,

Oiseau bleu

Bonjour oiseaubleu,

Afin d'utiliser votre sous routine il faut l'appeler de cette sorte :

Call Sous_routine1

Pour ce qui est de "Target.row", il faut déclarer une variable type Public

ex: Dim Public Ligne as integer

Public= Target.rows

Bonjour,

à tester,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call Sous_routine1(Target.Row)
End Sub

Sub Sous_routine1(NoLigne As Long)
MsgBox NoLigne  'pour le test
End Sub

Bonjour,

J'aimerais savoir si je le fais de cette façon est-ce correct?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Count > 3 Or Target.Count < 3 Then Exit Sub

If Target.Row >= Range("A10").Row Or Target.Row < Range("A20").Row Then

Description = Target.Value2(1, 1)

Call Sous_routine1(Target)

End If

End Sub

Sub Sous_routine1 (Target As Range)

Ligne1 = Range("A" & Target.Row)

Ligne2 = Range("A" & Rows.Count).End(xlUp).Row

End Sub

Bonjour,

cela me parait correct.

le test sur target.count pour exclure toutes les valeurs différentes de 3 pourrait être simplifié.

Bonjour et merci à tous pour votre assistance .

C'est vrai que je pourrais écrire :

If Target.Count <> 3 Then Exit Sub

Oiseau bleu

Rechercher des sujets similaires à "definition variables"