Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Verknüpfung (lnk) mit VBA starten

Forumthread: Verknüpfung (lnk) mit VBA starten

Verknüpfung (lnk) mit VBA starten
04.12.2014 11:06:06
Sebastian
Hallo Profis,
ich würde gerne mit Excel eine Verknüpfung im Windows Starten.
In einer Bat Datei funktioniert dieser Code.
start "" "C:\ProgramData\Mein.lnk"
Wie kann ich aber eine VERKNÜPFUNG direkt aus Excel VBA starten?
Shell "C:\ProgramData\Mein.lnk"
‘funktioniert leider nicht
Hat jemand eine Idee?
Vielen Dank und viele Grüße
Sebastian

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verknüpfung (lnk) mit VBA starten
04.12.2014 12:24:50
Luschi
Hallo Sebastian,
ich habe mal Tante "Google" gefragt mit diesen 4 Stichworten: vba .lnk file starten
und hat mir diese Antwort gegeben: http://support.microsoft.com/kb/506168/de
Gruß von Luschi
aus klein-Paris

Im folgenden Beispiel wird eine Verknüpfung mit dem Namen "C:\EIGENE DATEIEN\MYPROGR.LNK"  _
erstellt und in einer VBA-Funktion aufgerufen:
Starten Sie dazu den EXPLORER, wechseln Sie in das Verzeichnis "C:\EIGENE
DATEIEN" und rufen Sie den Menüpunkt DATEI - NEU - VERKNÜPFUNG auf.
Mit Hilfe der Schaltfläche DURCHSUCHEN können Sie nun jene Anwendung
auswählen, welche von der Verknüpfung gestartet werden soll.
Klicken Sie dann auf "Weiter" und geben Sie der Verknüpfung den Namen
"MYPROGR" (ohne Anführungszeichen).
Starten Sie ACCESS 7.0 und geben Sie in einem Modul folgende Funktion ein:
Function Aufruf()
dim x
x = Shell("start ""C:\EIGENE DATEIEN\MYPROGR.LNK""")
End Function
Die doppelten Anführungszeichen innerhalb der Zeichenkette sind in diesem Fall notwendig, da der Verzeichnis-Name ein Leerzeichen enthält, und daher innerhalb der Zeichenkette Anführungszeichen vor und nach dem Verweis auf die Verknüpfung eingefügt werden müssen.

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Verknüpfungen mit Excel VBA starten


Schritt-für-Schritt-Anleitung

Um eine Verknüpfung (lnk-Datei) mit Excel VBA zu starten, folge diesen Schritten:

  1. Erstelle eine Verknüpfung: Stelle sicher, dass die .lnk Datei bereits existiert. Du kannst eine Verknüpfung erstellen, indem du mit der rechten Maustaste auf die gewünschte Anwendung klickst und „Verknüpfung erstellen“ wählst.

  2. Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke im Projekt-Explorer mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ und wähle „Einfügen“ > „Modul“.

  4. Schreibe den VBA-Code: Kopiere den folgenden Code in das Modul:

    Sub StartVerknuepfung()
       Dim result As Double
       result = Shell("start ""C:\ProgramData\Mein.lnk""", vbNormalFocus)
    End Sub
  5. Führe das Makro aus: Du kannst das Makro jetzt ausführen, indem du im VBA-Editor F5 drückst oder über das Excel-Menü „Entwicklertools“ > „Makros“ auswählst.


Häufige Fehler und Lösungen

  • Fehler: Shell-Befehl funktioniert nicht: Stelle sicher, dass der Pfad zur .lnk Datei korrekt ist. Überprüfe, ob die Datei tatsächlich an dem angegebenen Ort existiert.

  • Fehler: Das Programm öffnet sich nicht: Prüfe, ob in der .lnk Datei Leerzeichen enthalten sind. In diesem Fall müssen doppelte Anführungszeichen um den gesamten Pfad gesetzt werden.


Alternative Methoden

Eine andere Möglichkeit, .lnk Dateien zu öffnen, ist die Verwendung eines Batch-Skripts. Erstelle eine .bat Datei mit folgendem Inhalt:

start "" "C:\ProgramData\Mein.lnk"

Du kannst dann diese Batch-Datei ebenfalls über VBA aufrufen:

Sub StartBatch()
    Shell "C:\Pfad\zu\deiner\Batchdatei.bat", vbNormalFocus
End Sub

Praktische Beispiele

Hier ist ein weiteres Beispiel, das eine andere Verknüpfung startet:

Sub StartMyApplication()
    Dim appPath As String
    appPath = "C:\EIGENE DATEIEN\MYPROGR.LNK"
    Shell "start """ & appPath & """", vbNormalFocus
End Sub

Achte darauf, dass der Pfad zur .lnk Datei korrekt ist und dass die Datei tatsächlich existiert.


Tipps für Profis

  • Verwende Variablen: Um den Code flexibler zu gestalten, kannst du den Pfad zur .lnk Datei in einer Variablen speichern. So kannst du ihn einfacher ändern, ohne den gesamten Code anpassen zu müssen.

  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um auf unerwartete Probleme zu reagieren. Zum Beispiel:

    On Error Resume Next
    Shell "start ""C:\ProgramData\Mein.lnk""", vbNormalFocus
    If Err.Number <> 0 Then
       MsgBox "Fehler beim Öffnen der Verknüpfung: " & Err.Description
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Was sind .lnk Dateien?
.lnk Dateien sind Verknüpfungen, die auf Anwendungen oder Dateien auf deinem Computer verweisen. Sie ermöglichen einen schnelleren Zugriff auf Programme.

2. Wie kann ich Verknüpfungen mit Excel VBA und Verknüpfung starten?
Du kannst den Shell Befehl verwenden, um .lnk Dateien direkt aus Excel VBA zu starten, wie im obigen Beispiel gezeigt.

3. Funktioniert dieser Code in allen Excel-Versionen?
Ja, der Code sollte in den meisten modernen Excel-Versionen funktionieren, solange du Zugriff auf den VBA-Editor hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige