Macro Lien hypertexte vers dernier onglet

laduche81

XLDnaute Junior
Bonjour,

J'ai un bouton de macro qui me permet d'archiver l'agenda présent dans la feuille "agenda of today" dans une nouvelle feuille qui va prendre la valeur contenue dans la cellule G2.
De plus, cette date vient se renseigner dans la première cellule vide de la colonne A dans la feuille "index" qui fait office de sommaire.
Ensuite, dans la première cellule vide de la colonne B de cette même feuille "index" j'essaye de faire un lien hypertexte vers la dernière feuille du classeur. Et là... ça ne marche pas.

Voici mon code ci-dessous et merci beaucoup par avance de votre aide!

Cdlt,

Adrien



Code:
Sub Macro1()
'
' Macro1 Macro
'

'
   
    If Sheets("Agenda of today").Range("G2") = 0 Then MsgBox ("Specify a date in G2")
    If Sheets("Agenda of today").Range("G2") = 0 Then Exit Sub
   
    ActiveSheet.Range("A5:K50").Select
    Selection.Copy
    Sheets.Add After:=Sheets(Sheets.Count)
    Range("A1").Select
    ActiveSheet.Paste
    Range("A1").Value = Sheets("Agenda of today").Range("G2").Value
    Columns("A:K").Select
    Columns("A:I").EntireColumn.AutoFit
    Rows("1:50").Select
    Rows("1:50").EntireRow.AutoFit
    
    ActiveSheet.Name = Format((Sheets("Agenda of today").Range("G2")), "dd-mm-yyyy")
  
    Sheets("index").Select
    Cells(Range("A65536").End(xlUp).Row + 1, 1) = Sheets("Agenda of today").Range("G2").Value
    
    Cells(Range("A65536").End(xlUp).Row + 0, 2).Select
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
    Sheets(Sheets.Count).Name & "!A1", TextToDisplay:="link to the agenda of that day"

    Sheets("Agenda of today").Select
    Range("G2").ClearContents
    Range("B6:K50").ClearContents
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Macro Lien hypertexte vers dernier onglet

Bonjour,

Code:
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
    Sheets(Sheets.Count).Name & "!A1", TextToDisplay:="link to the agenda of that day"

cette instruction fonctionne très bien chez moi, ce dans un module standard du classeur en question...

bon après midi
@+
 

laduche81

XLDnaute Junior
Re : Macro Lien hypertexte vers dernier onglet

Bonjour,

Le code semble correct en effet, cependant il ne marche pas chez moi. Je ne sais pas ce qui m'échappe, je vous joint mon fichier si cela peut aider.

Merci bien :)

Adrien
 

Pièces jointes

  • test.xlsm
    33 KB · Affichages: 49
  • test.xlsm
    33 KB · Affichages: 44
  • test.xlsm
    33 KB · Affichages: 46

laduche81

XLDnaute Junior
Re : Macro Lien hypertexte vers dernier onglet

Si je passe le fichier en 97-2003 puis que je le passe en .xlsm ca va résoudre le problème vous pensez?

Ci-joint
 

Pièces jointes

  • test2.xlsm
    33 KB · Affichages: 39
  • test2.xlsm
    33 KB · Affichages: 37
  • test2.xlsm
    33 KB · Affichages: 38
Dernière édition:

francedemo

XLDnaute Occasionnel
Re : Macro Lien hypertexte vers dernier onglet

bonjour à vous 2,

à essayer:
Code:
[FONT=monospace]ActiveSheet.Hyperlinks.Add _
   Anchor:=Selection, _
   Address:="", _
   SubAddress:= "'" & Sheets(Sheets.Count).Name & "'!A1", _
   TextToDisplay:="link to the agenda of that day"

[/FONT]
 

laduche81

XLDnaute Junior
Re : Macro Lien hypertexte vers dernier onglet

bonjour à vous 2,

à essayer:
Code:
[FONT=monospace]ActiveSheet.Hyperlinks.Add _
   Anchor:=Selection, _
   Address:="", _
   SubAddress:= "'" & Sheets(Sheets.Count).Name & "'!A1", _
   TextToDisplay:="link to the agenda of that day"

[/FONT]

Bonjour francedemo,

Merci cela marche parfaitement.
Merci aussi à vous Pierrot, effectivement les espaces dans le nom de la feuille étaient donc la source de mon erreur!

Bonne journée à vous deux :)

Adrien
 

francedemo

XLDnaute Occasionnel
Re : Macro Lien hypertexte vers dernier onglet

je me suis permis de simplifier un peu ton code, il y a surement encore mieux à faire...

Code:
Sub Macro1()

' Macro1 Macro
 
If Sheets("Agenda of today").[G2] = 0 Then MsgBox ("Specify a date in G2"): Exit Sub
   
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = Format((Sheets("Agenda of today").[G2]), "dd-mm-yyyy")

With Sheets("Agenda of today")
    .[A5:O50].Copy
    [A1:O45].PasteSpecial
    [A1].Value = .Range("G2").Value
End With

Columns("A:O").Select
Columns("A:I").EntireColumn.AutoFit
Rows("1:50").EntireRow.AutoFit
    
With Sheets("index")
    .Activate
    .Cells([A65536].End(xlUp).Row + 1, 1) = Sheets("Agenda of today").[G2].Value
    ActiveSheet.Hyperlinks.Add _
        Anchor:=.Cells([A65536].End(xlUp).Row + 0, 2), _
        Address:="", _
        SubAddress:="'" & Sheets(Sheets.Count).Name & "'!A1", _
        TextToDisplay:="link to the agenda of that day"
End With
With Sheets("Agenda of today")
    .Activate
    .[G2].ClearContents
    .[B6:K50].ClearContents
End With

End Sub

à +
 

Discussions similaires

Statistiques des forums

Discussions
312 484
Messages
2 088 801
Membres
103 971
dernier inscrit
abdazee