Extraire le nom de l'onglet actif et le renvoyer sous forme de lien

Bonjour,

Dans la continuité de mon projet, j'aimerai extraire le lien hypertexte de l'onglet actif pour le copier avec d'autres info sur une feuille récapitulative.

Ce lien hypertexte me permettrait qu'étant dans la feuille récapitulative (ici souffrances), les lignes insérées comporte un lien permettant l'accès direct à la feuille de base de cette ligne .

Ci-dessous un test de code qui ne fonctionne malheureusement pas..

voir fin du code à partir de : with ws_feuil2

Sub CdeRECURENCE4()
'Commande HORECA(Articles ayant une récurrence de 4
Application.CommandBars("Workbook tabs").ShowPopup
Dim msg, Style, Title, Help, Ctxt, Reponse

Dim wk_fichier As Workbook
Dim ws_feuil1 As Worksheet
Dim ws_feuil2 As Worksheet
Dim lstrw_feuil1 As Long, lstrw_feuil2 As Long
Dim ligne_coller As Long
Dim i As Integer
Dim VariableNom As String

VariableNom = ActiveSheet.Name

msg = "Voulez-vous insérer la Cde pour la période " & VariableNom & "?"    ' Définition du message.
Style = vbOKCancel    ' Definition bouton.
Title = "CONFIRMATION D'INSERTION DE COMMANDE"    ' Définition du titre.
Help = "DEMO.HLP"    ' Define Help file.
Ctxt = 2000    ' Define topic context.
Reponse = MsgBox(msg, Style, Title, Help, Ctxt)

   If Reponse = vbCancel Then
      Exit Sub
   Else

'définir les valeurs des variables pour les fichiers et onglets
Set wk_fichier = ActiveWorkbook
Set ws_feuil1 = wk_fichier.Worksheets("BD Articles") '1 entre parenthèse indique la feuille 1 qui est la BD articles
Set ws_feuil2 = ActiveSheet  'onglet dans lequel on se trouve et où l'on veut insérer la commande

'identifier dernière ligne colonne A de l'onglet BD Articles (feuil1)
lstrw_feuil1 = ws_feuil1.Cells(Rows.Count, 1).End(xlUp).Row

'effectue une boucle toutes sur les lignes comptées en commençant à la ligne 2 (ne prend pas en compte les titres de la ligne 1)
For i = 2 To lstrw_feuil1

    'imposition des conditions avant de prendre en compte la ligne sur: La récurrence doit être de 4, il doit y avoir un nombre à commander et doit être supérieur à zéro, copier coller dans la période de commande (feuille2)
            If ws_feuil1.Cells(i, 5) = 4 And ws_feuil1.Cells(i, 12) <> "" And ws_feuil1.Cells(i, 12) > 0 Then
             'identifier dernière ligne colonne A feuil2
              lstrw_feuil2 = ws_feuil2.Cells(Rows.Count, 2).End(xlUp).Row
              ligne_coller = lstrw_feuil2 + 1
              'copier coller de l'ongelt BD Articles vers onglet actif
              'ws_feuil2.Cells(ligne_coller, 2) = ws_feuil1.Cells(i, 1)
              ws_feuil2.Cells(ligne_coller, 3) = ws_feuil1.Cells(i, 2)
              ws_feuil2.Cells(ligne_coller, 7) = ws_feuil1.Cells(i, 12)
              ws_feuil2.Cells(ligne_coller, 10) = "I"

                    With ws_feuil2
                        .Hyperlinks.Add Anchor:=.Range(ligne_coller, 1), _
                         Address:=VariableNom, TextToDisplay:=VariableNom
                    End With
            End If

Next

    End If

End Sub

bonsoir,

essaie ceci

    
    With ws_feuil2
        .Hyperlinks.Add Anchor:=.Range(ligne_coller, 1), _
        Address:="", SubAddress:="'" & VariableNom & "'!A1", TextToDisplay:=VariableNom
    End With

Bonjour et merci, mais malheureusement non...

"la méthode range de l'objet worksheet à échoué"

bonsoir,

j'ai zappé le fait que tu n'as pas utilisé la bonne syntaxe pour .range ...

correction donc, remplacer Range par Cells

    With ws_feuil2
        .Hyperlinks.Add Anchor:=.Cells(ligne_coller, 1), _
        Address:="", SubAddress:="'" & VariableNom & "'!A1", TextToDisplay:=VariableNom
    End With

Bonsoir et super pour la réactivité mais aussi l'efficacité.

j'ai même peaufiner le code afin d'arriver sur la même ligne.

With ws_feuil2
.Hyperlinks.Add Anchor:=.Cells(ligne_coller, 1), _
Address:="", SubAddress:="'" & VariableNom & "'!A" & ligne_coller, TextToDisplay:=VariableNom
End With

Un tout grand merci de l'aide apportée, mon projet avance à grand pas

Rechercher des sujets similaires à "extraire nom onglet actif renvoyer forme lien"