Code à figer

Bonjour à tous,

Je voudrais créer une unique macro (lié avec un bouton contrôle).

Dans ma procédure il y aura une partie du code qui devra être exécuté une seule fois seulement.

Par exemple ajouter une worksheet et la renommer ("Consultation").

L'autre partie du code devra s'exécuter à chaque fois que je clic sur le bouton de contrôle.

J'espère que je suis clair.

Merci pour votre aide

Bonjour,

Dans ton exemple, il suffit de tester si la feuille existe. Si elle n'existe pas, tu la créées (premier clic sur le bouton), sinon, tu passes à la suite.

Par exemple :

Sub maMacro()
'macro déclenchée au clic sur mon bouton
If Feuil_Exist(ThisWorkbook.Name, "Consultation") = False Then
     'ICI je créée ma feuille
     'cette partie du code ne sera exécuté qu'une fois
End If
'Ici la suite de ton code...
End Sub

'Test si la feuille existe déjà
Function Feuil_Exist(strWbk As String, strWsh As String) As Boolean
'Gestionnaire d'erreur
On Error Resume Next
    '"Test"
    Feuil_Exist = (Workbooks(strWbk).Sheets(strWsh).Name = strWsh)
End Function

Dacc, merci à toi

A la prochiane pour d'autres questions

N'oublie pas de marquer ce sujet comme "résolu".

A++

Rechercher des sujets similaires à "code figer"