Herbers Excel-Forum - das Archiv
Hyperlink 255 Zeichen Länge
Betrifft: Hyperlink 255 Zeichen Länge
von: Cayburn
Geschrieben am: 14.11.2003 10:38:31
Hallo,
mein Problem ist, dass ich einen Hyperlink zu einer anderen Exceltabelle brauche, deren Linklänge aber länger als 255 Zeichen ist. Es handelt sich um ein riesiges Ablagesystem, wo die Exceltabellen drinne sind, und daher komme ich selbst mit dem relationalen Link bei mehr als 255 Zeichen. Ich kann die Dateien auch nicht verschieben, da es sich um spezielle Ablagen handelt.
Gibt es eine Möglichkeit trotzdem zu der 2.Datei zu verlinken?
Versuche ich es als normalen Link einzufügen, schmiert entweder Excel ab, oder sagt, er hätte die Datei nicht gefunden. (Rechtschreibfehler keine)
Betrifft: AW: zwar kein Hyperlink, aber...
von: Nike
Geschrieben am: 14.11.2003 15:54:45
Hi,
vielleicht funkt es ja, wenn du den Pfad und die Datei einfach in die Zelle schreibst,
diese per VBA ausließt und dann über Workbooks.open(Range("A1")) öffnest...
(in A1 steht dann z.B. C:\Verzeichnis\Unterverzeichnis\Datei.xls)
Bye
Nike
Betrifft: Das geht nicht.....
von: Ramses
Geschrieben am: 14.11.2003 16:43:15
Hallo wie auch immer,
.... die Länge des Dateinamens ist auf 255 Zeichen begrenzt.
Darin, im Dateinamen, eingeschlossen ist auch der Pfad der zur Zeichenlänge gezählt wird.
Deshalb kannst du auch die Datei nicht öffnen
Gruss Rainer
Betrifft: So geht es *annehm*
von: Reinhard
Geschrieben am: 14.11.2003 19:35:31
Hi Cayburn,
ich habe es jetzt nicht mit ellenlangen Verzeichnis/Datei-Namen getestet, aber
bei meinem Win98 klappt der Dosbefehl subst. D.h. anstatt auf C:\temp oder längerem Verzeichniswurm kann ich dann mit I: auf das Unterverzeichnis c:\temp zugreifen, wie das kleine Beispielmakro zeigt.
Excel erkennt I: und bietet mir dann (nach Durchlauf des Makros) auch bei Einfügen---Hyperlink I: als Verzeichnis an und ich kann bequem die jeweilige Datei auswählen.
Falls es bei dir nicht läuft, so binde
Lastdrive=Z
in deine Config.sys ein. Ansonsten gibt es grundsätzlich bei subst die Einschränkungen dass nicht alle Dos-Befehle darauf anwendbar sind, Format I: geht z.B. nicht.
Analog reagiert auch die hübsch bebilderte Dosvariante von Bill:-)
Gruß
Reinhard
ps: mit
subst i: /d
hebt man die Laufwerkszuordnung wieder auf
Sub test()
Shell ("c:\windows\command\subst.exe i: c:\temp")
With Application.FileSearch
.NewSearch
.LookIn = "i:"
.SearchSubFolders = True
.Filename = "*.xls"
.MatchTextExactly = True
If .Execute() > 0 Then
MsgBox "There were " & .FoundFiles.Count & _
" file(s) found."
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub