Lister des liens hypertexte par ordre alphabétique dans un UserForm

Chri8Ed

XLDnaute Occasionnel
Bonjour

J'utilise des cellules dans un grand tableau pour ouvrir de petits fichiers TXT.

Je souhaiterais pouvoirs lister toutes les lignes qui comportent des liens hypertexte dans un UserForm,
triées par ordre alphabétique
et de pouvoir cliquer directement sur ces liens à partir de cet UserForm pour ouvrir les fichiers TXT en questions.

Je ne sais pas si réalisable ?
Et je n’ai pas non plus les connaissances pour réaliser cette macro.
Peut être que quelqu’un à déjà réalisé ce genre de macro ?

Merci
 

job75

XLDnaute Barbatruc
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Bonjour Chri8Ed,

J'ai modifié l'UserForm :

- ajout d'une 1ère colonne indiquant s'il y a un lien (hypertexte)

- neutralisation de la macro ListBox1_Click (elle ne sert à rien)

- macro du double-clic sur une ligne de la ListBox :

Code:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
With ListBox1
  If .List(.ListIndex, 0) = "Lien" Then
    Application.DisplayAlerts = False
    ThisWorkbook.FollowHyperlink Cells(.List(.ListIndex, 6), 2).Hyperlinks(1).Address
  End If
End With
Unload Me
End Sub
Fichiers joints.

A+
 

Pièces jointes

  • Exemple Tableau(1).zip
    29.1 KB · Affichages: 34

Chri8Ed

XLDnaute Occasionnel
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Bonjour

Merci pour cette nouvelle aide

- neutralisation de la macro ListBox1_Click (elle ne sert à rien)

Si elle sert bien à quelque chose

Je redonne les explications portées dans mon exemple :

1 Clic : Positionnement sur la ligne (Sans sortie de la macro)

Double Clic : Placement sur la ligne dans la catégorie de la sélection et en haut de page


Il y a un gros problème
Certes je peux bien ouvrir le fichier texte associé aux liens hypertexte
Mais j'ai totalement perdu la fonction première de ma macro
Elle ne me place plus sur le cellule sélectionnée.
Et je ne vois même plus la cellule concernée.

A+
 

Chri8Ed

XLDnaute Occasionnel
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Effectivement le sujet de ma demande est bien la gestion des liens hypertexte

Mais si pour cela, je ne peux plus me placer sur ma feuille,
Cela ne me sert plus à rien.

Je ne veux pas remplacer une macro pour me positionner par une macro pour ouvrir des fichiers texte.

Ma demande comme je l'ai clairement indiqué tant dans ma demande que dans mon exemple, était de faire évoluer ma macro pour cette nouvelle fonction.

j'ai fait ce que j'avais à faire, à vous d'en faire ce que bon vous semble.

Mais je vous demande pas personnellement de le faire pour moi.
J'ai réalisé ce fichier exemple sur les conseils de MJ13
Ce n'est donc pas vous qui me l'avez demandé
Cela ne vous oblige donc en rien envers moi
Je vous remercie même comme je l'ai d’ailleurs déjà fait plusieurs fois.
Cela m'a permis au moins de voir que la chose était possible.

Maintenant il me reste à espérer qu'une personne sur le Forum puisse m'aider à réaliser cette macro.
C'est pour cela que j'ai renouvelé ma demande ce matin
Cette demande ne vous était pas adressée personnellement, mais au Forum en général.

Demande que je renouvelle donc maintenant.
 

Chri8Ed

XLDnaute Occasionnel
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Bonsoir Si

Merci beaucoup pour cette réalisation
Cette fois je suis très près de ce que je souhaite.

Je n'ai plus la visualisations des autres colonnes
Cela j'arriverai peut-être à les remettre

Mais par contre ce qui me gêne beaucoup, c'est que je n'ai plus le placement par "Page"

Dans la colonne A qui normalement est cachée, il y a le mot "Titre" pour chaque catégorie
Cette balise me permet de me placer sur la cellule de manière que a ce que le haut de la page corresponde à la catégorie

Dans mon fichier exemple
Si je clique par exemple sur "Nom5", la pointeur se place sur "Nom5" tout en plaçant la cellule "Catégorie 05" tout en haut de la page.
Je ne sais pas si me fais bien comprendre, mais autrement le mieux c'est de le faire un essai sur mon tableau exemple.

Je tiens beaucoup à cette fonction et si elle possible de la conservée, cela m'arrangerai beaucoup

A+
 

Si...

XLDnaute Barbatruc
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

salut

comme tu l'auras remarqué, j'utilise 2 colonnes masquée (taille à 0) pour enregistrer les numéros de ligne.
Si tu en rajoutes, il faudra faire attention à corriger les macros avec les bons numéros comme dans le fichier joint.

Je ne vois aucun renseignement concernant le "placement par Page" :confused:
 

Pièces jointes

  • Go Hyperliens.xlsm
    30.6 KB · Affichages: 26

job75

XLDnaute Barbatruc
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Bonjour Chri8Ed, salut Si...

Je ne vois toujours pas l'intérêt de se positionner sur la feuille mais ces macros correspondent à ce que vous voulez :

Code:
Private Sub ListBox1_Click()
Cells(ListBox1.List(ListBox1.ListIndex, 6), 2).Select 'quel intérêt ?
End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
With ListBox1
  Application.Goto Cells(Application.Match("zzz", [A1].Resize(.List(.ListIndex, 6))), 1), True
  Cells(.List(.ListIndex, 6), 2).Select 'facultatif peut-être ?
  If .List(.ListIndex, 0) = "Lien" Then
    Application.DisplayAlerts = False
    ThisWorkbook.FollowHyperlink Cells(.List(.ListIndex, 6), 2).Hyperlinks(1).Address
  End If
End With
Unload Me 'facultatif bien sûr
End Sub
Au double-clic le titre de la catégorie se trouve bien en haut de la feuille.

A+
 

Pièces jointes

  • Exemple Tableau(2).zip
    28.5 KB · Affichages: 22

Chri8Ed

XLDnaute Occasionnel
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Bonjour Si

Je ne vois aucun renseignement concernant le "placement par Page"

Pour que se soit plus compréhensif, je joins 2 copies d'écran

Dans mon exemple la catégorie 5 vient se placer dans le coin supérieur gauche
Comme ces catégories ne font en générale qu'une vingtaine de lignes
Cela me permet de visualiser d'un coup toute la catégorie désirée sans devoir utiliser la souris pour faire défiler les lignes.


comme tu l'auras remarqué, j'utilise 2 colonnes masquée (taille à 0) pour enregistrer les numéros de ligne.
Si tu en rajoutes, il faudra faire attention à corriger les macros avec les bons numéros comme dans le fichier joint.

Merci, tu as déjà rajouté plusieurs colonnes il en manque qu’une, je devrais donc pouvoir la rajouter en suivant tes conseils
Par contre je ne comprends pas pourquoi tu mets les catégories dans la même colonne que les cellules recherchées.

Voir les 2 copies d'écran
Dans cet exemple on a les catégories au dessus des noms :confused:


Je constate que dans cette nouvelle version, je me retrouve avec le message d'alerte
Alors que dans la 1ère je ne l'avais pas ? :(

A+
 

Pièces jointes

  • Mon fichier exemple.JPG
    Mon fichier exemple.JPG
    49 KB · Affichages: 33
  • Ton fichier.jpg
    Ton fichier.jpg
    53.8 KB · Affichages: 39
  • Ton fichier.jpg
    Ton fichier.jpg
    53.8 KB · Affichages: 41
  • Ton fichier.jpg
    Ton fichier.jpg
    53.8 KB · Affichages: 37
  • Mon UserForm.jpg
    Mon UserForm.jpg
    48.8 KB · Affichages: 44
  • Ton UserForm.jpg
    Ton UserForm.jpg
    71.5 KB · Affichages: 45

Chri8Ed

XLDnaute Occasionnel
Re : Lister des liens hypertexte par ordre alphabétique dans un UserForm

Rebonjour Job75

Je ne m’attendais pas à une nouvelle aide de votre part, mais c’est bien à cette macro là que j’inspirais et je vous en remercie.

Je ne vois toujours pas l'intérêt de se positionner sur la feuille mais ces macros correspondent à ce que vous voulez

Vous m’avez aidé et il normal que je vous renseigne sur ce point d’intérêt.
Ma feuille se compose de près de 4000 lignes

Elle est classifiée en catégorie d’une vingtaine de lignes ou plus quand je réduis la hauteur de ces lignes, car je fais en sorte à quelques rares exceptions près que tous tienne sur une seule page à l’écran.

Je sépare toutes ces catégories par une ligne de forte hauteur, qui ne se voit donc que partiellement à l’écran, ce qui fait qu’il n’y a qu’une seule et unique catégorie de visible à l’écran à la fois.

Quand je balaye toute la feuille de haut en bas ou inversement, je visualise donc ma feuille comme si je feuilletais un catalogue, catégorie par catégorie.

Je mets une copie d’écran de ce que cela donne pour une recherche d’une cellule de la catégorie 03.

Même si vous ne me l’avez pas demandé, j’espère que cela a éclairci votre interrogation sur ma demande et je vous remercie à nouveau pour votre aide.

A+
 

Pièces jointes

  • Catégorie 03.jpg
    Catégorie 03.jpg
    68.8 KB · Affichages: 38

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 341
Membres
103 524
dernier inscrit
Smile1813