adresses Hyperlink non litérales

V

Von

Guest
Bonsoir,

J'utilise actuellement des liens hypertext dans un dossier excel pour renvoyer d'un clic, l'utilisateur vers une page ou vers une autre.

Associés à une macro qui crée automatiquement de nouvelles feuilles NOMMEES en fonction du contenu d'une cellule je voudrais également qu'il crée un lien entre la cellule active et la nouvelle feuille crée.

Le problème est que je ne connais pas d'avance le nom de la feuille
(puisqu'il dépend du contenu de la cellule active qui change à chaque fois)et que je n'arrive pas à écrire la "sub adress de l'hyperlink" sans une adresse litérale.

Je me demande si on peu réellement faire appel à une feuille avec un nom de variable ou un numéro de rang de l'objet feuille.
Autrement dit peut désigner l'adresse d'un lien de manière non litérale.

Dans le même esprit j'ai le même problème pour ouvrir un fichier avec un nom qui revient d'un texte d'input box.
Ex: c:\windows\profiles\von\bureau\VALEUR IMPUT BOX.
Je sais que le dossier dison XXX existe. mais quand je saisis XXX dans la box il ne comprend pas.

Merci pour celui ou celle qui me montrera le chemin :)
J'aurai une éternelle (?) reconnaissance à son adresse !

Von
 
@

@+Thierry

Guest
=> DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Bonsoir Von enfin Re-Bonsoir, et au Forum aussi

Bon alors les Hyperlinks, je ne m'en suis jamais servi en VBA, sauf pour générer un mail, mais celà m'a donné envie de faire une démo.

Tu trouveras ci-joint, je pense, exactement ce que tu cherches à faire.

En fait c'est toujours autour de la même construction de concaténation de chaine de caractères construite avec des variables de type string et du texte en dûr. C'est par ce moyen que l'on peut désigner l'adresse d'un lien de manière non litérale, comme tu dis si bien ;-)

Je te laisse découvrir, ainsi qu'au forumeurs du Samedi soir !!

Sinon pour ton InputBox d'ouverture de fichier, c'est encore et toujours grace à une concaténation de chaine de caractères...

Voici un exemple :

Sub OuvrirParInputBox()
Dim Chemin As String
Dim Fichier As String

Chemin = "c:\Mes Documents\"
Fichier = InputBox("Veuillez Saisir un Nom de Fichier", "OUVERTURE DE FICHIER", "Classeur1")

If Right(Fichier, 4) = ".xls" Then
Fichier = Fichier
Else
Fichier = Fichier & ".xls"
End If
On Error GoTo ErrorHandler
Workbooks.Open Fichier
Exit Sub

ErrorHandler:
MsgBox "le fichier " & Fichier & " n'a pas été trouvé dans " & Chemin
End Sub

On remarque que quelque soit la manière dont le user indique le nom de fichier, avec extension "Classeur1.xls" ou non "Classeur1", la macro se charge de faire le nécessaire.

Voilà Von !! et bienvenu sur XLD car il me semble que l'on ne s'est pas encore rencontré.

Bonne soirée à tous et toutes
@+Thierry
 

Pièces jointes

  • Auto_Creation_Hyperlinks.zip
    15.2 KB · Affichages: 16
@

@+Thierry

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Re le Forum, Von

Quelqu'un a t'il essayé cette démo ?

Tandis que la version non zippée fonctionne bien chez moi, j'ai testé le zip et j'ai un message d'Excel quand j'active un Hyperlien..."Impossible d'ouvre le fichier spécifié"...

Très bizarre, en fait même si j'avais un hyperlien manuellement dans ce fichier, j'ai le même message... Vraiment Zarbi...

Je remets une version, pour voir si c'est peut être le Zip qui est corrompu...

Sorry en espérant quie cette version va mieux passer !
@+Thierry
 

Pièces jointes

  • Auto_Creation_HyperlinksV1.01.zip
    14.4 KB · Affichages: 19
@

@+Thierry

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Bon ben là çà marche bien depuis le Zip téléchargé sur mon dernier post...

Donc ne chargez pas le première cersion du post de 21:09, je pense que le zip a corrompu le classeur de manière à rendre impossible les liaisons...

Sinon c'est excatement le même fichier, mis à part son nom !

Bonne soirée
@+Thierry
 
V

Von

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Encore Merci donc :)

C'était donc aujourd'hui une aide du type Double pour moi ;)

Je copie le code, je comprend le code, j'adapte le code
et c'est le bonheur.

Merci également pour l'acceuil sur le forum (dont j'ai pu apprécié la courtoisie systématique à travers les anciennes questions)

Bonne soirée.

Von
 
V

Vériland

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Bonsoir Thierry Von et le forum,

ben me voiloù...j'avais testé la première version et effectivement il y avait un problème de lien...en fait il rajoutait automatiquement "www.Excel-downloads.com" davant toto1...!!???!!...mais je ne comprenais vraiment pas ce qui faisait faire là ce lien...mais comme tu mettais en commentaire qu'il y avait quelques petits bonus pour les test de validation j'ai cherché partout sans trouver...looooool

Bon là c'est clair...Bon en plus je n'ai pas eu le temps de te rappeler car j'avais autre chose à gérer en même temps...donc là je reviens pour te dire qu'effectivement la deuxième version est celle qui fonctionne...

Alors comme il y avait un problème de corruption, j'ai dû faire intervenir un huissier...

...euh...oui thierry !...j'ai fais appel à maître "Vébéha"...hi hi hi

...voilà...allez-y maître...

Auto_Creation_HyperlinksV1.01
Demo_Certifie.gif

smiley_374.gif

...Merci maître "Vébéha"...lol

A+Veriland.gif


PS : euh...En plus du problème de lien je cherchais également l'userform...donc tu vois le temps qu'il m'a fallu....loooool
 
V

Von

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

SUPERBE !
Absolument superbe !
Merci pour ces explications, solutions et démonstrations.

Juste une petite précision qui pourrait en intéresser certains
dans le même cas que moi.

Dans ton cours magistral, Thierry, les noms sont d'un seul bloc.
Dans mon cas particulier il y avait des espaces car les noms de feuilles était du type "SALUT LE FORUM".

Dans ce cas la concaténation de l'adresse sub doit être comme ci-après pour fonctionner :

SubAddress:= " ' " & sheet(rang).name & " ' " & "!a1"
car sinon avec seulement
SubAddress:= " " & sheet(rang).name & "!a1"
le lien n'est pas valide.

C'est sans aucun doute un détail mais je précise
pour les débutants comme moi.

Sinon merci encore et je suis evidemment du coup tenté
de poser encore et encore plein de questions :)
Le revert de la médaille peut être ;)
 
@

@+Thierry

Guest
Re: => DEMO Auto Génération d'Hyperlinks en fonction de variables (non litérale !)

Bonsoir Von

Ah oui bien sur... En fait c'est carrémement une obligation dans tous les autres noms d'objets et je nomme tellement d'objets en VBA et que l'on n'a pas le droit d'utiliser des espaces... Cette facilité de le faire sur les feuilles est un piège.

Moi c'est simple..... jamais je n'utilise d'espace ou de caractère spéciaux ou accent dans les noms d'onglets de feuilles... Sinon c'est le sbinz pour des méthodes tel que RowSource ou autres dans les UserForm...

Je sais que çà fait pas joli joli...... mais je nomme par exemple "Rapport_Juillet_2003" et je suis jamais emm... enfin c'est vous qui voyez...

Bonne nuit
@+Thierry
 

Discussions similaires

Réponses
5
Affichages
219

Statistiques des forums

Discussions
314 662
Messages
2 111 641
Membres
111 243
dernier inscrit
flo-99010