Création de lien hypertexte

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Florian53

XLDnaute Impliqué
Bonjour a tous,

Donc tout d'abord je dispose d'un classeur excel qui de base se nomme "demande d'achat" je dispose d'un bouton validation celui ci me permet d'incrémenter le nom de classeur c'est à dire :

- demande d'achat001, demande d'achat002............

dés l'incrémentation effectué elle sauvegarde en même temps ce nouveau classeur dans un dossier par défaut qui est Mes documents.

Je voudrais savoir si dés que mon classeur s'enregistre il serait possible que ça me renvoie un lien hypertexte d'où est situé ce dernier classeur enregistré.

Le code qui me sert à incrémenter le nom de mon classeur est le suivant:

Sub AutoSaveIncremental()
Dim MyName As String, MyNumber As Variant
' Récupération du prochain numéro
MyNumber = Get_Number_Next(10)
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 10) & Format(MyNumber, "000")
' Mise à jour de la numerotation
Maj_numbers 10, MyNumber
' Sauvegarde
Save_numbers
ThisWorkbook.SaveAs MyName
End Sub


Est ce que je peux rajouter une ligne de commande pour que ça me crée un lien hypertexte systématiquement?
 
Re : Création de lien hypertexte

Bonjour Florian53, le forum 🙂,
Logiquement, ton lien hypertexte, tu l'as dans ta variable MyName (il manque peut-être le .xls en fonction de ce que te renvoie Get_Number_Next(10)). Mais je ne comprends pas où tu veux envoyer ton lien. Si c'est dans le classeur que tu viens d'enregistrer, quel est l'intérêt d'ouvrir un classeur déjà ouvert 😕 ?
Bonne journée en attendant 😎
 
Re : Création de lien hypertexte

Bonjour Florian53, le forum 🙂,
Logiquement, ton lien hypertexte, tu l'as dans ta variable MyName (il manque peut-être le .xls en fonction de ce que te renvoie Get_Number_Next(10)). Mais je ne comprends pas où tu veux envoyer ton lien. Si c'est dans le classeur que tu viens d'enregistrer, quel est l'intérêt d'ouvrir un classeur déjà ouvert 😕 ?
Bonne journée en attendant 😎

Bonjour, merci d'avoir pris de ton temps pour essayé de résoudre mon probléme je vais t'expliquer:

Je dispose d'un classeur "Commande en cours" par l'aide d'une macro je viens ouvrir mon classeur "demande d'achat" et grâce a une macro je valide et cela enregistre et incrémente le nom de mon classeur.

Et je désirerais qu'une fois sauvegarder elle me renvoie un lien hypertexte dans une cellule de " commande en cours" pour une simplification des consultations des commandes.
 
Re : Création de lien hypertexte

Bonjour Florian53 🙂,
C'est bizare, la commande
Code:
    ActiveSheet.Hyperlinks.Add Anchor:=Cells(2, 2), Address:= _
        "C:\Documents and Settings\All Users\Documents\Fichiers de Lucie\Nouvelle histoire.doc", TextToDisplay:= _
        "C:\Documents and Settings\All Users\Documents\Fichiers de Lucie\Nouvelle histoire.doc"
fonctionne parfaitement chez moi...
Essaie de tester le code seul avnt de le compiquer avec les variables (c'est certainement d'elles que vient le problème).
Bon courage 😎
 
Re : Création de lien hypertexte

Et est ce que quelque chose comme ça résoudrais mes problème mais je vois pas ou je pourrais l'intégrer:

Sub CreerLiensAutresFeuilles()
Dim I As Byte, J As Byte
Dim Val As String

For I = 1 To Sheets.Count
If Not ActiveSheet.Name = Sheets(I).Name Then
Val = "'" & Sheets(I).Name & "'!A1"
J = J + 1
Worksheets(1).Hyperlinks.Add Anchor:=Cells(J, 1), Address:="", SubAddress:=Val
End If
Next I

End Sub

Est ce que je peux mettre Call CreerLiensAutresFeuilles juste avant ThisWorkbook.SaveAs MyName?
 
Re : Création de lien hypertexte

Bonjour Florian53 🙂,
Si tu veux le mettre dans un autre classeur, il faut d'abord l'ouvrir. Ton code serait plutôt :
Code:
Workbooks.Open Filename:= _
        "C:\Documents and Settings\Jean-Noël\Bureau\Belote5.xls"
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="Test.xls", _
        TextToDisplay:="Test.xls"
Bonne journée 😎
 
Re : Création de lien hypertexte

Merci à toi d'avoir répondu,

Le classeur dans lequel je veux copier le lien est déjà ouvert donc la la commande wokbooks.Open ne convient pas j'ai utilisé la commande Workbooks("nomclasseur.xls") mais cela ne fonctionne pas j'ai copié comme ceci:

Sub AutoSaveIncremental()
Dim MyName As String, MyNumber As Variant
' Récupération du prochain numéro
MyNumber = Get_Number_Next(10)
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 10) & Format(MyNumber, "000")
' Mise à jour de la numerotation
Maj_numbers 10, MyNumber
' Sauvegarde
Save_numbers
Workbooks("nomclasseur.xls")
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="Test.xls", _
TextToDisplay:="Test.xls"
ThisWorkbook.SaveAs MyName
End Sub


Comment puis je bien l'intégrer pour que cela fonctionne ?

Et je voudrais savoir si c'est possible d'intégrer un variable qui me servirait qu'à chaque clique sur la macro un lien hypertexte se collerait donc sur l'autre classeur les uns en dessous des autres?
 
Re : Création de lien hypertexte

J'ai en parti résolu mon problème, il reste seulement a indiqué le chemin du dernier classeur enregistré:

Voila le code que j'ai rentrer pour l'instant:

Sub AutoSaveIncremental()
Dim MyName As String, MyNumber As Variant
' Récupération du prochain numéro
MyNumber = Get_Number_Next(10)
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 10) & Format(MyNumber, "000")
' Mise à jour de la numerotation
Maj_numbers 10, MyNumber
' Sauvegarde
Save_numbers
Dim wb As Workbook
Set wb = GetObject("C:\Documents and Settings\Florian\Mes documents\essai\Commande en cours.xls")
wb.Activate
ActiveSheet.Hyperlinks.Add Anchor:=Cells(8, 13), Address:="C:\Documents and Settings\Florian\Mes documents", _
TextToDisplay:=MyName
ThisWorkbook.SaveAs MyName
Call MessageInformation
ThisWorkbook.Close
End Sub


ActiveSheet.Hyperlinks.Add Anchor:=Cells(8, 13), Address:="C:\Documents and Settings\Florian\Mes documents",
C'est vraiment ici que je bloque car mon nom de classeur change a chaque fois car il s'incrémente donc comment spécifier qu'il prenne le dernier enregistrer?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

B
Réponses
1
Affichages
2 K
Bartman
B
D
Réponses
0
Affichages
1 K
doumitrip
D
Retour