XL 2016 problème pour créer de nouvelles feuilles à partir de filtres

scoubidou35

XLDnaute Occasionnel
Bonjour à tous,
j'ai un fichier avec un code pour activer des boutons m'emmener directement sur la bonne feuille grâces aux filtres
et lorsque la feuille n'existe pas alors rien ne se passe et je suis obligé de créer manuellement les pages manquantes si besoins.
J'aimerai modifier le process, en rajoutant la possibilité de créer directement la feuille souhaitée à partir d'un model préenregistré.
Si quelqu'un sait comment faire je suis tout ouïe.
Merci d'avance et bien sure je reste disponible pour répondre à vos questions.
@+
 

Pièces jointes

  • FICHIER TEST- CREER PLAN.xlsm
    194.9 KB · Affichages: 13

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour scoubidou35, le forum
Salut pierrejean

En retard mais c'est fait alors je le poste !

Cordialement, @+
VB:
Sub BoutonPlan()
Dim s$, Cible$
s = ActiveSheet.DrawingObjects(Application.Caller).Caption & " "
Cible = s & Range("K4") & " (" & IIf(Left(Range("Q4"), 3) = "Pri", "1", "2") & ")"
If ExistWorkSheet(Cible) Then
    Worksheets(Cible).Activate
Else
    If MsgBox("le plan n'existe pas." & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Voulez-vous le créer maintenant ?", vbQuestion + vbYesNo) = vbYes Then
        MsgBox "Allons-y !"
        ActiveWorkbook.Unprotect ""
        Sheets("PLAN POTAGER (vierge)").Copy After:=Sheets(Sheets.Count)
        ActiveSheet.Name = Cible
    End If
End If
End Sub
Function ExistWorkSheet(NomFeuille$) As Boolean
    Dim Test_Feuille As Worksheet
    On Error Resume Next
    Set Test_Feuille = Sheets(NomFeuille) 'tout type de feuille, feuille standard, feuille graphique, feuille dialogue
    Feuille_Existe = Not Test_Feuille Is Nothing
    Err.Clear
End Function
 

scoubidou35

XLDnaute Occasionnel
Bonjour
A tester
Bonjour pierrejean,
Merci J'ai testé et c'est bien ce que je demande merci. Mais il y a deux points que je cherche à modifier et que je n'y arrive pas.

1er point : Comment faire pour que le nouvel onglet ce place au bon endroit (à la fin et si possible dans l'ordre chronologique en fonction de l'année).
J'ai essayé avec la fonction copy after mais en vain.

2eme point : Comment faire pour conserver le format car qaund je créé un nouveau plan j'ai un problème avec mes boutons de navigation qui sont déformés. et ce qui est étrange c'est que j'ai pas ce problème avec le code de yeahou 🙄.

Merci beaucoup

PS: merci également à Yeahou pour le temps passé
 

scoubidou35

XLDnaute Occasionnel
Bonsoir pierrejean,

Bon avec votre code et celui de Yeahou je suis parvenu à obtenir le résultat souhaité.
Il me reste simplement un petit point que je voudrais rajouter si possible.
J'ai rajouté Application.DisplayAlerts dans le code car j'ai un message "Le nom "LOCAL_MYSQL_DATE_FORMAT" existe déjà." et je ne sais pas à quoi cela est dû.

Dans le fichier une fois la nouvelle feuille crée j'ai mis du code pour que dans les zones en jaune (Année et période) soit également rempli automatiquement à partir du nom de l'onglet.
 

Pièces jointes

  • FICHIER TEST- CREER PLAN (3).xlsm
    210 KB · Affichages: 8
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 183
dernier inscrit
karelhu35