Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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("C1313").Select
Exit Sub
Else
If Worksheets.Select = Sheets("Cal.app.") Then
Worksheets("Cal.app.").Columns("G:L").Select
Selection.EntireColumn.Hidden = True
Range("C1313").Select
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Executer macro suivant feuille active

Bonjour Wachoo

pas sur d'avoir tout compris, mais pour tester le nom de la feuille active :

Code:
If ActiveSheet.Name = Sheets("nomAtester") Then

bonne fin d'après midi
@+
 

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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…