Lien Hypertexte Et Reference Cellule

FABIENNE

XLDnaute Nouveau
Comment Mettre En Place Un Lien Hypertexte Dans Une Cellule En Faisant Reference Toujours A La Meme Feuille (meme Si Celle-ci Est Renommee)
Je Cherche Et Ne Trouve Pas
Merci De Votre Aide
 

FABIENNE

XLDnaute Nouveau
Re : Lien Hypertexte Et Reference Cellule

BONJOUR!
je suis toujours dans mes tests!! en sortirais-je un jour???
j'ai inséré la procédure renommerhyper dans ma procédure nommeronglet et j'ai un message d'erreur sur la ligne :
If Sheets(feuille).Hyperlinks.Count = 0 Then Exit Sub

l'indice n'appartient pas à la sélection
Pourquoi ?
 

pierrejean

XLDnaute Barbatruc
Re : Lien Hypertexte Et Reference Cellule

bonjour FABIENNE

cela signifie que dans la variable feuile passée en parametre il y a un nom qui ne correspond pas a un nom de feuille
avant cette ligne mets
msgbox(feuille)
tu auras un message indiquant ce qu'il y a dans feuille avant l'erreur
et mefies-toi avec les noms de feuilles qui peuvent etre interprétés comme des chiffres !!!
 

pierrejean

XLDnaute Barbatruc
Re : Lien Hypertexte Et Reference Cellule

bizarre !!

le ok ne serait pas par hasard celui du bouton !!
ce qui signifierait qu'il n'y a rien dans le parametre
lorsque tu ecris
Call renommer...(quelquechose,autrechose,encoreautre)
quelquechose autrechose encorautre sont des parametres ,ils doivent etre du type requis (en l'occurence String)
la macro renommer...(....) les traduira et travaillera avec
dans ton cas je pense qu'il n'y a rien dans le parametre feuille
 

FABIENNE

XLDnaute Nouveau
Re : Lien Hypertexte Et Reference Cellule

tout d'abord bonjour pierrejean
vraiment je manque à tous les devoirs de politesse!!! je ne t'ai même pas salué aujourd'hui!!
j'ai de la chance que tu daignes me répondre!!
tu as raison c'est le bouton OK!! et d'ailleurs quand je clique dessus la macro continue de tourner et j'ai un msgbox à chaque changement de feuille.
ce que je ne comprends pas c'est cette feuille vide qu'elle détecte et que moi je ne vois nulle part!!!
vraiment grrrrrr:
 

FABIENNE

XLDnaute Nouveau
Re : Lien Hypertexte Et Reference Cellule

voilà la macro que j'ai crée pour renommer les feuilles en y intégrant un call pour les LHT

'Déclaration de variables
Dim i As Integer
Dim feuille As String
Dim anciennom As String
Dim nouveaunom As String
'Evite affichage des différentes feuilles à l'écran
Application.ScreenUpdating = False
For i = 1 To Sheets.Count
Worksheets(i).Name = Worksheets(i).Range("G2")
Next i
Call renommerhyper(feuille, anciennom, nouveaunom)
End Sub


Question bête : et si la feuille qui me pose souci était "this workbook" ?

sinon dans l'idéal pour moi :
 

ChTi160

XLDnaute Barbatruc
Re : Lien Hypertexte Et Reference Cellule

Salut Fabienne
bonsoir le Fil
Bonsoir le Forum
l'occasion de salut Pierrejean

bon je n'ai pas suivi
mais voila ce à quoi j'ai pensé
j'ai cru comprendre que tu récupères le nouveau nom dans la cellule G2 de la feuille active et ensuite tu veux renommer la feuille i
donc
Code:
 For i = 1 To Sheets.Count
With Worksheets(i)
     anciennom=.Name
     nouveaunom=.range("G2")
     feuille= i
Call renommerhyper(feuille, anciennom, nouveaunom)
Next i
pas sur d'avoir compris, mais j'ai salué pierrejean :D

Bonne fin de Soirée
Bon WeekEnd
 

pierrejean

XLDnaute Barbatruc
Re : Lien Hypertexte Et Reference Cellule

re

sans avoir testé:

For I = 15 To 75
Worksheets(I).Name = Worksheets(I).Range("G2")
For n = 1 To 14
Call renommerhyper(Sheets(n).Name, Worksheets(I).Name, Worksheets(I).Range("G2"))
Next n
Next I

j'ai tenté de t'expliquer ce que sont les parametres d'une sub (pour une fonction c'est pareil)

peut-etre l'application te permettra de mieux apprehender le concept

sinon j'essaierai d'etre plus clair

edit

Salut a JEAN MARIE :):)

ton post devrait mettre FABIENNE sur la bonne voie

apres reflexion il faudrait plutot
feuille= Worksheets(i).Name
au lieu de
feuille=i
(dans ce cas i est numero de la feuille et non son nom )
 
Dernière édition:

FABIENNE

XLDnaute Nouveau
Re : Lien Hypertexte Et Reference Cellule

bonjour le forum,
après maintes réflexions et tentatives et vos différents aiguillages....
voici la macro que j'ai intégré dans mon fichier et qui me donne satisfaction.
Elle nomme l'onglet des feuilles selon le nom inséré dans la colonne B, à partir de la ligne 8 et met à jour les liens de la feuille 1 à 14.


Option Explicit

Dim Old_Name As String, New_Name As String

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Ind As Integer, Pos As Integer
Dim Hyp As Hyperlink
Dim TxtTarget As String, HypSubAddress As String
'démarrage de la mise à jour des liens et nom onglet à la ligne 8
If Trim("" & Target.Text) <> "" Then
If Target.Row > 7 And Target.Column = 2 Then
New_Name = Target.Text
Sheets(Target.Row + 7).Name = New_Name
Application.ScreenUpdating = False
For Ind = 1 To 14
For Each Hyp In Sheets(Ind).Hyperlinks
If Trim(Hyp.SubAddress) <> "" Then
HypSubAddress = Replace(Hyp.SubAddress, "'", "")
Old_Name = Replace(Old_Name, "'", "")
If InStr(HypSubAddress, Old_Name) <> 0 Then
If Left(Mid(HypSubAddress, 1), Len(Old_Name)) = Old_Name Then
Pos = Len(Old_Name)
Hyp.SubAddress = "'" & New_Name & "'" & "!A1"
End If
End If
End If
Next Hyp
Next Ind
End If
End If

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Trim("" & Target.Text) <> "" Then Old_Name = Target.Text
End Sub

Merci encore à tous pour votre aide et votre convivialité
L'AMOUREUSE DES MAJUSCULES
 

Discussions similaires

Statistiques des forums

Discussions
312 482
Messages
2 088 766
Membres
103 955
dernier inscrit
mikaveli