Erreur d’exécution ‘1004’ avec Hyperlinks.Add

Bonjour,

J'ai un problème avec une macro d'arborescence de dossiers/fichiers avec lien (Hyperlinks.Add) c'est l'erreur

Erreur d’exécution ‘1004’: Erreur définie par l’application ou l’objet

qui se produit vers la ligne 65534 (J'ai écris vers car ce n'est pas la ligne 65536 mais autour .

erreurexecution1004

C'est ce code

 
 .Hyperlinks.Add Anchor:=.Cells(ligne, 2), _
 Address:=dossier.Path & "\" & f.Name, _
 TextToDisplay:=f.Name

qui surligné au moment de l'erreur.

mes recherche m'ont amenées sur

mais ça n'a rien résolue.

Pour contourner ce problème j'ai utilisé

On Error Resume Next

la macro continue sans les liens.

aveconerrorresumenext

Est-ce que vous auriez une idée de l'origine du problème et surtout comment le résoudre ?

Merci d'avance

Patrick

Bonjour,

Ton fichier était un peu vérolé !...

Tu avais plusieurs ThisWorkbook.

J'ai recrée un classeur.

A tester.

Cdlt.

Bonsoir Jean Eric,

Merci pour ton intervention.

Je viens de tester ton fichier est c'est exactement le même problème.

A la ligne 65534 les liens n'y sont plus, il y a juste le texte.

PS: Comment on fait pour enlever un ThisWorkbook en trop ?

Bonjour,

Personne a une idée pour résoudre ce problème ?

Ou au moins sur l'origine de ce bug ?

Merci

Bonjour,

Le nombre maxi de liens hypertexte dans une feuille de calcul est de 66 530 !...

Cdlt.

Merci Jean Eric pour ta réponse.

Mais tu as trouvé cette info où ?

sur mon fichier j'arrive à 65530 !

Et comment faire pour contourner cette limitation ?

Patrick

Merci Eric pour ce lien.

Je ne comprend pas bien pourquoi il y une limite, mais bon il faut faire avec.

Je ne marque pas le sujet comme résolu, car je n'ai pas de solution à mon problème.

Bon Week-End à tous

Bonjour,

J'ai trouvé une solution qui contourne ce problème. (Si ça peut aider !)

En fait quand j'arrive à 65000 lignes je crée une nouvelle feuille et je réinitialise la variablePublic "ligne"

et j’incrémente la variablePublic "n"

 n = 1
 NbLigneMaxi = 65000
 
  If ligne > NbLigneMaxi Then
        Sheets.Add(After:=Worksheets("FeuilleArborescence" & n)).Name = "FeuilleArborescence" & n + 1
    Sheets("ArborescenceExtention" & n + 1).Select
    n = n + 1
    ligne = 4
Else
End If

Bonne journée a tous

Patrick

Rechercher des sujets similaires à "erreur execution 1004 hyperlinks add"