Lancer une macro en cliquant sur une cellule

Bonjour

Je voudrais quant je clic sur la cellule B1 ( 43) ou B13 ( 44) ou B25 ( 45) ect... je lance une macro pour que celui si m'ouvre un fichier en fonction d'un critère voir ci-dessou

voici la macro

Workbooks.Open Filename:="K:\TD-Production\Public\FR\G6\Tri spécial g6.xlsm" ' le fichier à ouvrir

ActiveSheet.ListObjects("Table_SQLXAL").Range.AutoFilter Field:=46, _

Criteria1:="44" ' ici je voudrais en fonction de la cellule cliquer exemple ici le 44 le critère mette 44

ActiveWindow.SmallScroll Down:=-42

Est ce possible d'abord?

si oui comment faire.

Cordialement

Bonjour

A tester

  • Clique droite sur l'onglet de la feuil1, puis choisis l'option "visualiser le code"
  • dans la fenêtre colle le code ci-dessous:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B:B")) Is Nothing Then
Workbooks.Open Filename:="K:\TD-Production\Public\FR\G6\Tri spécial g6.xlsm" ' le fichier à ouvrir
ActiveSheet.ListObjects("Table_SQLXAL").Range.AutoFilter Field:=46, Criteria1:=Target.Value
End If
End Sub

- Enregistre ton fichier avec l'extension XLSM

Si ok, lors de ta réponse clique sur la case à cocher verte à coté du bouton EDITER afin de cloturer le fil

Amicalement

Bonjour

Merci

voici la macro qui fonctionne j'était obliger de faire quelque correction

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim var As Integer

If Not Intersect(Target, Range("D:D")) Is Nothing Then

Cells(8, 14) = Target.Value

var = Cells(8, 14)

Workbooks.Open Filename:="K:\TD-Production\Public\FR\G6\Tri spécial g6.xlsm"

ActiveSheet.ListObjects("Table_SQLXAL").Range.AutoFilter Field:=46, _

Criteria1:=var

ActiveWindow.SmallScroll Down:=-42

End If

End Sub

Re

Fais plutot ceci alors car "var" ne sert pas vraiment :

Cells(8, 14) = Target.Value
Workbooks.Open Filename:="K:\TD-Production\Public\FR\G6\Tri spécial g6.xlsm"
ActiveSheet.ListObjects("Table_SQLXAL").Range.AutoFilter Field:=46, _
Criteria1:=cells(8,14).value

ou

Cells(8, 14) = Target.Value
Workbooks.Open Filename:="K:\TD-Production\Public\FR\G6\Tri spécial g6.xlsm"
ActiveSheet.ListObjects("Table_SQLXAL").Range.AutoFilter Field:=46, _
Criteria1:=target.value

L'instruction "ActiveWindow.SmallScroll Down:=-42" ne sert pas vraiment sauf si tu veux descendre vers le base de ta feuille mais bon une fois le 42 devra peut être être plus élevé selon les données dans ta feuille

Si ok, clique sur le v vert à coté du bouton EDITER pour cloturer le fil

Amicalement

Rechercher des sujets similaires à "lancer macro cliquant"