problème d'affichage de formule

  • Initiateur de la discussion Initiateur de la discussion pepevand
  • 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 !

pepevand

XLDnaute Nouveau
J'ai créée une macro qui inscrit une formule dans certaines cellules (je ne peux pas inscrire directement la valeur, car celle ci doit se mettre à jour à l'ouverture du fichier et je ne peux pas faire cette mise à jour par une macro à l'ouverture, problème de sécurité oblige)

J'ai donc utilisé la formule suivante:
Cells(i, lien_hyp).Formula = '=Lien_hypertexte('essai.xls';'essai')'

La formule est correcte, mais le probléme c'est que dans la cellule s'affiche la formule et non le lien hypertexte.

J'ai bien essayé de changer le format de ma cellule, standard au lieu de texte via la formule suivante:
Cells(i, lien_hyp).NumberFormat = 'General'

mais l'affiche devient correcte uniquement si je double-clique sur ma cellule.

Je travaille sur plus de 30000 lignes, je ne me vois donc pas cliquer sur chacune d'entre elles!!!

Si quelqu'un a une idée, je le remercie par avance.
 
Je ne peux te donner que la procédure qui créée les liens hypertextes, le reste étant confidentiel (désolé c'est tout ce que je peux faire)


Sub lien(nbr_ligne, nbr_colonne, rel, item_id, code, reference)
'nbr_ligne est le nombre de ligne renseignée de la feuille
'nbr_colonne est le nombre de colonne renseignée de la feuille
'rel, item_id, code et refrence sont les numèros des colonnes sur lesquelles
'on travaille


'Création de deux nouvelles colonnes qui contiendront:
'le nom du fichier excel vers qui on veut faire un lien hypertexte
'le lien en lui même

Range(Columns(item_id + 1), Columns(item_id + 2)).Select
Selection.Insert Shift:=xlToRight

Columns(rel).Select
Selection.EntireColumn.Hidden = True
Columns(item_id).Select
Selection.EntireColumn.Hidden = True

nom = item_id + 1
lien_hyp = item_id + 2
Cells(1, nom) = 'Nom de fichier'
Cells(1, lien_hyp) = 'Lien Hypertexte'

'En fait le lien ne sera créèr que sur les lignes en rose (couleur 7)

For i = 2 To nbr_ligne
If Rows(i).Interior.ColorIndex = 7 Then
Cells(i, nom).Value = Cells(i, code).Value & '_' & Cells(i, reference).Value & '_' & '-' & '.xls'
fichier = '''' & Sheets('Feuil1').Cells(1, 1).Value & '\\' & Cells(i, nom).Value & ''''
nom_lien = '''' & Cells(i, nom).Value & ''''
Cells(i, lien_hyp).Formula = '=lien_hypertexte(' & fichier & ';' & nom_lien & ')'
Cells(i, lien_hyp).NumberFormat = 'General'
Cells(i, lien_hyp).Select
End If
Next i
Columns(nom).Select
Selection.EntireColumn.Hidden = True
End Sub
 
re,

inverse ces 2 lignes
Code:
 Cells(i, lien_hyp).Formula = '=lien_hypertexte(' & fichier & ';' & nom_lien & ')'
Cells(i, lien_hyp).NumberFormat = 'General'

comme ceci en changeant 'lien_hypertexte' en 'HYPERLYNK'
Code:
 Cells(i, lien_hyp).NumberFormat = 'General'
Cells(i, lien_hyp).Formula = '=HYPERLYNK(' & fichier & ';' & nom_lien & ')'


Il faut mettre le format avant la formule sinon tu es obligé de valider ta formule

@+
 
J'avais mis la ligne Cells(i, lien_hyp).NumberFormat = 'General'
aprés car en la mettant avant l'affectation de la cellule ça ne marche pas, j'ai l'erreur suivante:

Erreur d'éxécution 1004

Erreur définie par l'application ou par l'objet.

J'ai même essayé d'appliquer ce format à toute la colonne avant d'affecter les cellules, et j'ai la même erreur.
 
re,

Eh ben, je seche la, j'ai essayé tout les cas que tu donnes et pas de probleme chez moi.

Il faudrait vraiment un exemple.
Peut etre peux tu changer tes données afin de ne pas diffuser de données confidentielles.

Si tu veux je te donne ma bal, je mettrai les eventuelles corrections ici
sans joindre de fichier

à toi de voir

@+
 
- 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

Réponses
5
Affichages
703
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour