1.7k Aufrufe
Gefragt in Tabellenkalkulation von petra65 Experte (1.8k Punkte)
Hallo, guten Morgen,

ich knobel mal wieder an einem Makro, leider funktioniert es nicht wie gewünscht ..: folgendes Problem

In Spalte A stehen die Kunden-Nummern, zu diesen Nummern existieren gleichlautende Tabellen in dem Ordner Behandlungen (also Kunden-Nummer = 1, dann Tabelle 1.xls).
Ich möchte einen Hyerlink zu den Tabellen herstellen.
Mein Makro generiert zwar Hyperlinks, doch beim Auswählen kommt die Meldung "Die angegebene Datei konnte nicht geöffnet werden".
Meiner Meinung nach liegt der Fehler in der Adressangabe .... ich finde aber leider die Lösung nicht ;-(

So sieht das Makro zurzeit aus:

Sub HyperlinksEinfuegen()
Dim raZelle As Range
Dim strPath$

strPath = ThisWorkbook.Path & "\Behandlungen"

For Each raZelle In Range("A5:A65536")
If raZelle <> "" Then ActiveSheet.Hyperlinks.Add Anchor:=raZelle, _
Address:="strPath & raZelle & .xls", SubAddress:="'" & raZelle & "'!A5"
Next raZelle

End Sub

Ich hoffe mal wieder auf Hilfe, vielen Dank und viele Grüße

Petra

4 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Petra,

Du hast den Backslash hinter "Behandlungen" vergessen, also

strPath = ThisWorkbook.Path & "\Behandlungen\"
da die Daten ja im Ordner "Behandlungen" liegen


MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Petra,

ich nochmal. Dann ist noch ein Fehler in der Erstellung des Pfades im Hyperlink. Nachfolgend mal Dein Makro, wie es funktionieren sollte.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub HyperlinksEinfuegen()
Dim raZelle As Range
Dim strPath$

strPath = "C:\Behandlungen\"

For Each raZelle In Range("A5:A65536")
If raZelle <> "" Then _
ActiveSheet.Hyperlinks.Add Anchor:=raZelle, Address:=strPath & raZelle & ".xls"
Next raZelle
End Sub



MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von petra65 Experte (1.8k Punkte)
Hi Oliver,

jep ... so funktioniert es.

Vielen Dank für die Hilfe ;-)


Gruss - Petra
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Petra,

gerne geschehen. Danke auch für die Rückmeldung.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
...