Lien Hypertexte Vers pages HTML

piwa

XLDnaute Occasionnel
Bonjour,

Grace au forum, j'ai recupéré deux macros me permettant :

de publier toutes les pages du classeur en html de faocn auto

de faire un sommaire de mes feuilles de facon auto et interactive (nom de la feuille = nom dans la feuille sommaire) par contre les liens hyper texte générés sont des liens vers les feuilles Excel et NON des liens vers les pages html générées.

J'aimerai savoir si il possible de generer mes liens sommaires automatiquement mais avec comme lien une page html.

L'idee : sous un navigateur je retourve mon sommaire et qaund je click sur un lien je vais dans la page html correspondante.

Merci de votre aide
 

jmd2

XLDnaute Accro
Re : Lien Hypertexte Vers pages HTML

hello

est-il possible de créer les liens hypertexte par concaténation de :
- chemin web du répertoire contenant ton site (c'est invariable)
- nom de la page (variable selon la page)
?

*****
 

piwa

XLDnaute Occasionnel
Re : Lien Hypertexte Vers pages HTML

Bonjour et MErci jmd2

C'est cela .... je veux juste que le sommaire de mon classeur qui synthétise toutes les feuilles (nom des feuilles) fasse un lien vers /feuil1.html puis feuil2.html etc etc

Voila le code de création du sommaire actuel :
Private Sub Worksheet_Activate()
Range("C6").Select
Range(ActiveCell, [C65000].End(xlUp)).ClearContents
For i = 2 To Sheets.Count
nf = Sheets(i).Name
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:="'" & _
nf & "'" & "!A1", TextToDisplay:=nf
ActiveCell.Offset(1, 0).Select
Next i
End Sub

MErci de ton aide
 

Staple1600

XLDnaute Barbatruc
Re : Lien Hypertexte Vers pages HTML

Bonjour


Une petit modif (pour éviter les select)

Code:
 Private Sub Worksheet_Activate()
[B]     Range("C6:C" &  [C65000].End(xlUp).Row).ClearContents[/B]
    For i = 2 To Sheets.Count
      nf = Sheets(i).Name
      ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:="'" & _
         nf & "'" & "!A1", TextToDisplay:=nf
      ActiveCell.Offset(1, 0).Select
    Next i
End Sub
 

jmd2

XLDnaute Accro
Re : Lien Hypertexte Vers pages HTML

re

le lien hypertexte attendu serait plutôt du type :
cheminverstonrépertoireinternet & nomdelapage (avec le .htm si nécesaire)
nomdelapage n'est pas le nom de la feuille de ton classeur .xls, mais le nom que ta macro a donné à ta page html

mais là, j'ai peur de ne pas être à la hauteur en VBA.

édit : bonjour Staple1600, sympa de dépanner en VBA :)

*****
 

MichelXld

XLDnaute Barbatruc
Re : Lien Hypertexte Vers pages HTML

rebonjour,


Ma réponse initiale pourra peut être convenir tout compte fait (lies liens sont créés en bas de page).

https://www.excel-downloads.com/threads/dissocier-chaque-feuille-htm.33565/

Code:
Dim Ws As Worksheet
Dim Fichier As String, monCode As String
Dim i As Byte

For Each Ws In ThisWorkbook.Worksheets
    'adapter le chemin
    Fichier = ThisWorkbook.Path & "\" & Ws.Name & ".htm"
    ActiveWorkbook.PublishObjects.Add _
        (xlSourceSheet, Fichier, Ws.Name, "", xlHtmlStatic, "", "").Publish
    
    '*********** ajout liens hypertextes dans les pages créées *********
    Open ThisWorkbook.Path & "\" & Ws.Name & ".htm" For Append As #1
        Print #1, "<HTML>"
        Print #1, "<HEAD><BODY>"
        
        For i = 1 To Sheets.Count
            If Ws.Name <> Sheets(i).Name Then
                monCode = "<PR><CENTER><td bgcolor='#FFFFFF' rowspan='2'><a href='" & _
                    ThisWorkbook.Path & "\" & Sheets(i).Name & ".htm'>" & _
                    Sheets(i).Name & "</a></td><BR></CENTER>"
                
                Print #1, monCode
            End If
        Next i
        
        Print #1, "</HEAD></BODY>"
    Close #1
Next

'affiche la 1ere page
ThisWorkbook.FollowHyperlink ThisWorkbook.Path & "\" & _
    Sheets(1).Name & ".htm", NewWindow:=True


bon après midi
michel
Microsoft Excel MVP
 
Dernière édition:

piwa

XLDnaute Occasionnel
Re : Lien Hypertexte Vers pages HTML

Merci à vous 3

Merci Stapple 1600 : Pour l'affinage du code

Merci JMD2 : Pour mon besoin, c'est bien le nom de chaque feuil du classeur que je veux dans le sommaire mais au lieu d'avoir un lien xls je voudrai un lien htm...
Je pense qu'il faut bidouiller cette partie :
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:="'" & _
nf & "'" & "!A1", TextToDisplay:=nf


Merci à michel c'est ton code que je vais prendre pour generer les pages htm (PARFAIT et MERCI) mais ile me manque juste mon sommaire avec les liens ok qui pointeront vers les feuilles generées

Mon process :
Mon classeur avec 1 feuil nommé Sommaire, puis feuil1, feuil2 etc etc
Avec le code ci dessus j'alimente en auto mon sommaire (MAIS je Voudrai des Lien HTM au lieu des liens generés par le code.... )
Avec le Code de Michel je publie le tout et ainsi j'ai mon sommaire et quand je click sur feuil1 je vais sur feuil1.htm.

Merci encore
 

piwa

XLDnaute Occasionnel
Re : Lien Hypertexte Vers pages HTML

En complement et pour vous donner des éléments factuels, voila la maquette en PJ :

Mise à jour du sommaire ok sauf qu'il faut des liens vers HTM et non des liens vers onglet excel
Publication (source michel xld, merci) c'est ok mais inutile de mettre toutes les feuils en lien simplement un retour vers le sommaire

PS: j'ai essayé de changer le chemin de publication mais erreur debogeur... j'ai du me tromper

Merci de votre aide.
 

Pièces jointes

  • FAQ LBT Piwa.xls
    40 KB · Affichages: 59

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 693
Membres
103 641
dernier inscrit
anouarkecita2