Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Hyperlink: Datei mit dem gleichen Namen öffnen wie in Zelle eingetragen.

Begonnen von Carlos_C, Februar 07, 2011, 17:26:01

⏪ vorheriges - nächstes ⏩

Carlos_C

Hallo Leute!

Ich habe eine Frage über Hyperlinks.

Also, ich habe eine Excel-Tabelle, in der in einer Spalte verschiedene Dateinamen eingetragen sind, von pdf-Dateien, die sich im gleichen Ordner befinden, wo die Excel-Datei sich befindet.

Ich möchte beim Anklicken auf eine Zelle, dass sich die pdf-Datei öffnet, die im gleichen Ordner wie die Excel-Datei ist, und genau so heißt, wie was in der Zelle eingetragen ist.

Z.B., in der Zelle ist ,,Datei001.pdf" eingetragen. Beim Anklicken auf öffnet sich dann ,,Datei001.pdf", die sich im gleichen Ordner wie die Excel-Datei befindet.

Kann man sowas bei Excel machen?

Ich freue mich auf jede Meldung!

Liebe Grüße,

Carlos
Gruß,

Carlos

Hondo

Hallo,
in Rechtsklick auf die Zelle klicken und dann auf Hyperlink gehen und die Zieladresse angeben.
Oder wenn du das dynamisch möchtest per VBA den Hyperlink an einer speziellen Adresse eintragen lassen.

Andreas

Carlos_C

Hallo Andreas!

Danke für Deine Antwort! Ich habe aber hunderten von Dateien und eine manuelle Zuweisung, wie Du vorschlägst, würde Jahren dauern. Ich möchte das automatisch machen. Also, wenn ich die Zelle anklicke, soll das System, im gleichen Ordner, wo sich die Excel-Datei befinden, nach einer Datei suchen, die genau den gleichen Namen hat, wie was in der Zelle eingetragen ist, und sie öffnen.

Z.B. wenn in der Zelle das Wort ,,Datei001.pdf" eingetragen ist, soll die Datei ,,Datei001.pdf" im Ordner gesucht und geöffnet werden. Wenn das System die Datei nicht findet, soll ein MsgBox eine Fehlermeldung geben (z.B. Fehler: Die Datei existiert nicht).

Kann man so was machen?

Liebe Grüße,

Carlos
Gruß,

Carlos

database

Hallo,

die Geschichte mit den Hyperlinks ist nicht gerade das Gelbe vom Ei - eleganter ist die Lösung über VBA!

hierzu benötigst du ein wenig Code ....

Also erstelle im VBA-Editor der Arbeitsmappe ein Modul und benenne es nach Belieben.
in dieses Modul fügst du folgende Zeilen ein:


Option Explicit

'Benötigter API-Aufruf
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
      (ByVal hwnd As Long, ByVal lpOperation As String, _
       ByVal lpFile As String, ByVal lpParameters As String, _
       ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


Sub Oeffnen()

   Dim strPfad As String
   Dim strDatei As String
   
   strPfad = ThisWorkbook.Path & "\"   'Der Speicherort deiner ExcelDatei + Backslash
   strDatei = ActiveCell.Value         'Der Inhalt der markierten Zelle
   
   If strDatei <> "" Then
       'Wenn der Dateinamen übergeben wurde, die Datei öffnen
       ShellExecute Application.hwnd, "Open", strPfad & strDatei, _
            vbNullString, vbNullString, vbNormalFocus
   Else
       MsgBox "Die Zelle mit dem Dateinamen wurde nicht angeklickt!", vbExclamation, "Datei öffnen"
   End If

End Sub


Dann erstellst du auf dem Arbeitsblatt einen Button und weist ihm das Makro 'Oeffnen' zu
Alternativ kannst du natürlich das Makro auch über eine Tastenkombination aufrufen, die du dann halt dem Makro zuweisen musst.

Tja und das war's eigentlich  --->  Zelle mit Dateinameninhalt markieren und Makro ausführen ---> Datei wird geöffnet.

HTH

p.s. Musterdatei im Anhang

[Anhang gelöscht durch Administrator]

Carlos_C

Hallo Leute!

Ich habe (fast) eine Lösung gefunden!

Also, ich habe eine andere Spalte erstellt. In jeder Zelle habe ich eine Formel geschrieben. Z.B. in der Zelle B4 habe ich folgendes geschrieben:

=HYPERLINK("C:\Mein Ordner\" & A3;"open file")

Das einzige Problemchen jetzt ist, dass ich statt "C:\Mein ordner\" eine Funktion finden möchte, die den Ordner definiert, in dem die Excel-Datei sich befindet.

Kann man so was machen?

Gruß,

Carlos
Gruß,

Carlos

Carlos_C

Danke, Database! Ich glaube aber, dass ich bei der ,,=Hyperlink"-Lösung bleiben werde. Mit einer VBA-Prozedur müsste ich das Format zu ,,.xlsm" ändern.

Gruß,

Carlos
Gruß,

Carlos

Carlos_C

Gefunden!

=HYPERLINK(A3;"open file")

Ohne Pfad. Das System sucht anscheinend automatisch im gleichen Ordner, wo sich die Excel-Datei befindet. So einfach =)

Gruß,

Carlos
Gruß,

Carlos

database

Hallo,

naja, wenn du mit der Hyperlinklösung glücklich bist - warum nicht.  ;D

ZitatMit einer VBA-Prozedur müsste ich das Format zu ,,.xlsm" ändern
Denke, dass sich der Aufwand ziemlich in Grenzen halten würde  ;)