Executer macro suivant feuille active

wachoo31

XLDnaute Occasionnel
Bonjour a tous

Je voudrais créé une macro que l'on lance par la touche "F12", je sais comment programmer cette touche, mais mon souci est que :
par exemple si je suis sur la feuille 1 la macro me masque les colonne d à h, mais si je suis sur la feuille 2, la même macro vu la touche "F12" doit masquer les colonne g à l. ellle peu en même temps masquer les colonnes des deux feuilles mais c'est la que je bloque car je n'arrive pas par VBA a contrôler sur quelle feuille je suis au moment de faire "F12" ce qui me retourne une erreur si je suis sur la feuille 2

Voici le code :
Sub Ferme_APP()
'
If Worksheets.Select = Sheets("App.") Then
Worksheets("App.").Columns("G:M").Select
Selection.EntireColumn.Hidden = True
Range("C13:D13").Select
Exit Sub
Else
If Worksheets.Select = Sheets("Cal.app.") Then
Worksheets("Cal.app.").Columns("G:L").Select
Selection.EntireColumn.Hidden = True
Range("C13:D13").Select
End Sub
 

skoobi

XLDnaute Barbatruc
Re : Executer macro suivant feuille active

Bonjour wachoo31,

pour identifier la feuille active utilise ActiveSheet, ça donne ceci:

Code:
Sub Ferme_APP()
'
  If ActiveSheet.Name = "App." Then
    ActiveSheet.Columns("G:M").EntireColumn.Hidden = True
    Range("C1313").Select
  ElseIf ActiveSheet.Name = "Cal.app." Then
    ActiveSheet.Columns("G:L").EntireColumn.Hidden = True
    Range("C1313").Select
  End If
  End Sub

Edit:
salut Pierrot :)
 

Discussions similaires

Statistiques des forums

Discussions
312 495
Messages
2 088 964
Membres
103 992
dernier inscrit
Christine 974