Bonjour la communauté,
Je vous contacte car après plusieurs recherches, je n'arrive pas à trouver (ou comprendre) comment arriver à la solution.
Je vous explique, j'ai un UserForm qui me permet de créer des onglets (ça je suis arrivé à le gérer) et pour chaque onglet créée, le nom de l'onglet s'inscrit dans un onglet nommé "Bibliothèque" qui ne change pas.
Mon souhait serait de pouvoir créer un lien hypertexte de cette onglet créer dans ma bibliothèque. Le but est que si je crée beaucoup de feuilles, que je puisse en passant par ma bibliothèque navigué entre mes onglets facilement.
PS: Dans ma bibliothèque j'ai 3 colonnes (1 par type de feuille), ci-dessous l'entête de ma bibliothèque,
Ci-dessous: 1 des 3 code qui me permet de dupliquer 1 onglet masqué et qui ajoute le nom de l'onglet à la bibliothèque:
Merci d'avance de vos retours.
Je vous contacte car après plusieurs recherches, je n'arrive pas à trouver (ou comprendre) comment arriver à la solution.
Je vous explique, j'ai un UserForm qui me permet de créer des onglets (ça je suis arrivé à le gérer) et pour chaque onglet créée, le nom de l'onglet s'inscrit dans un onglet nommé "Bibliothèque" qui ne change pas.
Mon souhait serait de pouvoir créer un lien hypertexte de cette onglet créer dans ma bibliothèque. Le but est que si je crée beaucoup de feuilles, que je puisse en passant par ma bibliothèque navigué entre mes onglets facilement.
PS: Dans ma bibliothèque j'ai 3 colonnes (1 par type de feuille), ci-dessous l'entête de ma bibliothèque,
Ci-dessous: 1 des 3 code qui me permet de dupliquer 1 onglet masqué et qui ajoute le nom de l'onglet à la bibliothèque:
J'aurai bien voulu vous joindre le fichier pour que cela soit plus claire, mais il est trop volumineux (1 995 Ko) , si vous avez une solution pour que je puisse vous le partager je suis preneur. Ca faciliterai les échange car j'ai peur que mon explication soit trop flou.Private Sub CmbValiderCreerChaine_1_Click()
Dim MyVar As Byte
If Me.OptCreationChaine1 = True Then 'Si la case Création chaine page 2 est coché
If Me.ComboJeuConnuACreer1 <> "" Then 'Si la combobox page 2 est différent de vide ?
Application.ScreenUpdating = False
Worksheets("Calculs chaine de cotation").Visible = True
Sheets("Calculs chaine de cotation").Select 'Selectionne l'onglet à copier/dupliquer
Sheets("Calculs chaine de cotation").Unprotect "1111"
Sheets("Calculs chaine de cotation").Copy After:=Sheets("Calculs chaine de cotation") 'Duplique l'onglet apres l'onglet Tolérances alésage
Worksheets("Calculs chaine de cotation").Protect "1111", False, True, True
Worksheets("Calculs chaine de cotation").Visible = False
On Error Resume Next
ActiveSheet.Name = Me.ComboJeuConnuACreer1
If Err <> 0 Then
MsgBox "Le nom de la chaîne à créer n'est pas possible, certains caractères ne sont pas acceptés par excel ou la chaîne existe déjà.", vbExclamation
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
Exit Sub
End If
On Error GoTo 0
ActiveSheet.Unprotect
Range("C4") = "N° Affaire"
Range("E3") = "Titre 1"
Range("E5") = "Titre 2"
Range("F7") = "Nom chaîne"
Range("A16:H40").ClearContents
ActiveSheet.Protect
On Error Resume Next
MyVar = Application.WorksheetFunction _
.Match(Me.ComboJeuConnuACreer1, Sheets("Bibliothèque").Range("B1:B200"), 0)
If Err <> 0 Then
Sheets("Bibliothèque").Range("B" & Sheets("Bibliothèque").Range("B20").End(xlUp).Row + 1) = Me.ComboJeuConnuACreer1
MsgBox " Chaîne : " & Me.ComboJeuConnuACreer1 & " crée"
ComboJeuConnuACreer1.AddItem (ComboJeuConnuACreer1)
On Error GoTo 0
ComboJeuConnuACreer1 = ""
OptCreationChaine1 = False
Me.MultiPage1.Page1.Visible = True
Me.MultiPage1.Page2.Visible = False
Me.MultiPage1.Value = 0
Exit Sub
End If
Else
MsgBox "Merci de renseigner un nom à cette nouvelle chaîne", vbExclamation
Exit Sub
End If
On Error GoTo 0
ElseIf Me.OptDeleteChaine1 = True Then
MyVar = Application.WorksheetFunction _
.Match(Me.ComboJeuConnuACreer1, Sheets("Bibliothèque").Range("B1:B200"), 0)
Sheets("Bibliothèque").Range("B" & MyVar).Delete Shift:=xlUp
Application.DisplayAlerts = False
Worksheets(ComboJeuConnuACreer1.Value).Delete
Application.DisplayAlerts = True
MsgBox "Chaîne : " & Me.ComboJeuConnuACreer1 & " supprimé"
ComboJeuConnuACreer1.RemoveItem (ComboJeuConnuACreer1.ListIndex)
ComboJeuConnuACreer1 = ""
OptDeleteChaine1 = False
Me.MultiPage1.Page1.Visible = True
Me.MultiPage1.Page2.Visible = False
Me.MultiPage1.Value = 0
Else
MsgBox " Merci de sélectionner création ou suppressions de chaîne", vbExclamation
End If
End Sub
Merci d'avance de vos retours.