Lien hypertexte vers pdf

  • Initiateur de la discussion Initiateur de la discussion annov
  • Date de début Date de début

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 !

annov

XLDnaute Occasionnel
Bonsoir,

J'ai un classeur avec listes de choix dans lequelles le choix apparait sous forme de lien hypetext vers un fichier pdf , jusque là pas de problème .Le soucis c'est que je souhaite ouvrir le cataloque pdf à une page prècise et non au début du pdf(afin d'éviter le défilement jusqu'à la bonne page) .J'ai recherché des solutions sur le net .Exemple en mettant #page=9. à la fin du lien mais sans succès . Apparemment je ne suis pas le seul à rechercher cette solutuion . Existe t'il une solution à ce problème ou est-ce tout simplement impossible?

Merci
 
Re : Lien hypertexte vers pdf

J'ai découvert excel il y a deux ans env et VBA que depuis Mars de cette Année. mais j'essaye d'apprendre seul et sans bouquin donc je suis un peu à la traine mais je me connais et j'y arriverai.

En tout cas merci bien pour ton aide Job75.
Je vais me dépatouiller.
 
Dernière édition:
Re : Lien hypertexte vers pdf

Bonjour DoudouNours, le forum,

je n'avais plus le temps hier soir, je devais m'absenter.

Voici une solution pour un nombre quelconque de liens/pages :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Pages, i As Byte
Pages = Array(5, 2, 3, 4)
For i = 0 To UBound(Pages)
  If Target.Address = [A1].Offset(, i).Address Then
    [B7].Offset(, 2 * i).Select
    ThisWorkbook.FollowHyperlink ThisWorkbook.Path & "\Page precise.pdf"
    Application.Wait Now + 3 / 86400 'Excel 2003 => temporisation 3 secondes
    SendKeys "{DOWN " & Pages(i) - 1 & "}"
    Exit Sub
  End If
Next
End Sub
Version (3).

A+
 

Pièces jointes

Re : Lien hypertexte vers pdf

Super, moi j'avais inscris ça:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim test As Boolean, page%
test = Target.Address = "$A$1"
If test Or Target.Address = "$B$1" Then
  IIf(test, [B7], [D7]).Select
  page = IIf(test, 5, 2)
  ThisWorkbook.FollowHyperlink "C:\Documents and Settings\Administrateur\Bureau\Mes essai lien vers PDF\not_nlc_association_modules_cutter_coda_aspi_digit_A.pdf"
  SendKeys "{DOWN " & page - 1 & "}"
End If
test = Target.Address = "$C$1"
If test Or Target.Address = "$D$1" Then
  IIf(test, [B7], [D7]).Select
  page = IIf(test, 3, 4)
  ThisWorkbook.FollowHyperlink "C:\Documents and Settings\Administrateur\Bureau\Mes essai lien vers PDF\not_nlc_association_modules_cutter_coda_aspi_digit_A.pdf"
  SendKeys "{DOWN " & page - 1 & "}"
End If
End Sub

Mais la tienne est plus simple et plus courte

J'ai tout de même enlevé la temporisation car effectivement elle n'est plus utile sur Excel 2007

A+
 
Re : Lien hypertexte vers pdf

Bonjour DoudouNours, le forum,

Une autre solution (4) où l'on utilise la page indiquée par l'info-bulle :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim page%
If Selection.Rows.Count = 9 Then 'si 9 lignes sélectionnées
  On Error Resume Next
  page = Split(ActiveCell.Hyperlinks(1).ScreenTip, "=")(1) 'utilisation de l'info-bulle
  If page Then
    ActiveCell.Select
    ThisWorkbook.FollowHyperlink ThisWorkbook.Path & "\Page precise.pdf"
    Application.Wait Now + 3 / 86400 'Excel 2003 => temporisation 3 secondes
    SendKeys "{DOWN " & page - 1 & "}"
  End If
End If
End Sub
Bien regarder les adresses des liens hypertextes.

A+
 

Pièces jointes

Dernière édition:
Re : Lien hypertexte vers pdf

Bonjour DoudouNours, le forum,

Dernière chose, si les liens conduisent à plusieurs fichiers, on peut utiliser cette version (5) :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim s
If Selection.Rows.Count = 9 Then 'si 9 lignes sélectionnées
  On Error Resume Next
  s = Split(ActiveCell.Hyperlinks(1).ScreenTip, "-Page=") 'utilisation de l'info-bulle
  If Err = 0 Then
    ActiveCell.Select
    ThisWorkbook.FollowHyperlink ThisWorkbook.Path & "\" & s(0) 'pour ici
    'ThisWorkbook.FollowHyperlink s(0) 'si chemin d'accès dans l'info-bulle
    Application.Wait Now + 3 / 86400 'Excel 2003 => temporisation 3 secondes
    SendKeys "{DOWN " & s(1) - 1 & "}"
  End If
End If
End Sub
A+
 

Pièces jointes

- 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

E
Réponses
10
Affichages
5 K
E
Réponses
1
Affichages
4 K
Compte Supprimé 979
C
Retour