Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1164to1168
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Verknüpfung erstellen - keine Wiederholung

Verknüpfung erstellen - keine Wiederholung
Dietmar
Hallo zusammen,
den nachfolgenden Code habe ich hier im Forum erhalten, funzt tiptop.
Ich habe die Ausführung im Rahmen von Workbook_Open über Application.Run "VerknüpfungAufDesktop" eingebaut. Damit habe ich gewährleistet, dass die Verknüpfung bei der ersten Öffnung der Datei auch erstellt wird.
Wie kann ich nun erreichen, dass
- entweder der Code beim Öffnen der Datei nicht mehr ausgeführt wird, wenn die Verknüpfung VORHANDEN ist (also durch den Anwender nicht aus Versehen gelöscht wurde), ODER
- zumindest die msgbox-Erfolgsmeldung nicht mehr erscheint (diese muss in jedem Fall beim ersten Öffnen der Datei erscheinen, damit meine Leute wissen, dass sie erstellt wurde).
Jemand eine Idee?
Vielen Dank vorab!
Viele Grüße
Dietmar aus Aachen
Sub VerknüpfungAufDesktop()
Dim oShell As Object, oLink As Object
Dim strDesktop$, strPath$, strFile$, strLinkName$
On Error GoTo ErrorHandler:
strPath = "C:\MLC2010\"
strFile = "MLC2010_Programm.xls"
strLinkName = "MLC2010.lnk"
If Dir(strPath & strFile) = "" Then GoTo Fin:
Set oShell = CreateObject("WScript.Shell")
strDesktop = oShell.SpecialFolders("Desktop")
strDesktop = IIf(Right$(strDesktop, 1) = "\", strDesktop, strDesktop & "\")
Set oLink = oShell.CreateShortcut(strDesktop & strLinkName)
With oLink
.TargetPath = strPath & strFile
.IconLocation = "%SystemRoot%\system32\SHELL32.dll, 159" ' 130=Schmetterling
.Save
End With
MsgBox "OK, die Verknüpfung wurde erstellt"
Cleanup:
Set oLink = Nothing
Set oShell = Nothing
Exit Sub
Fin:
MsgBox "Nein"
GoTo Cleanup:
ErrorHandler:
MsgBox "FehlerNummer: " & Err.Number & vbCr & vbCr & Err.Description, vbCritical, "Hat leider  _
nicht geklappt!"
GoTo Cleanup:
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Verknüpfung erstellen - keine Wiederholung
08.07.2010 23:06:01
Ramses
Hallo
probier mal
Sub VerknüpfungAufDesktop()
    Dim oShell As Object, oLink As Object
    Dim strDesktop$, strPath$, strFile$, strLinkName$
    On Error GoTo ErrorHandler:
    strPath = "C:\MLC2010\"
    strFile = "MLC2010_Programm.xls"
    strLinkName = "MLC2010.lnk"
    If Dir(strPath & strFile) = "" Then GoTo Fin:
    Set oShell = CreateObject("WScript.Shell")
    strDesktop = oShell.SpecialFolders("Desktop")
    strDesktop = IIf(Right$(strDesktop, 1) = "\", strDesktop, strDesktop & "\")
    
    'Neu
    If Dir(strDesktop & strLinkName) <> "" Then
        MsgBox "Der Link existiert schon auf Ihrem Desktop", vbOKOnly + vbInformation, "Info"
        GoTo Cleanup
    End If
    
    Set oLink = oShell.CreateShortcut(strDesktop & strLinkName)
    With oLink
        .TargetPath = strPath & strFile
        .IconLocation = "%SystemRoot%\system32\SHELL32.dll, 159" ' 130=Schmetterling
        .Save
    End With
    MsgBox "OK, die Verknüpfung wurde erstellt"
    Cleanup:
    Set oLink = Nothing
    Set oShell = Nothing
    Exit Sub
    
    Fin:
    MsgBox "Nein"
    GoTo Cleanup:
    
    ErrorHandler:
    MsgBox "FehlerNummer: " & Err.Number & vbCr & vbCr & Err.Description, vbCritical, "Hat leider nicht geklappt!"
    GoTo Cleanup:
End Sub

Gruss Rainer
Anzeige
Toll !
08.07.2010 23:41:49
Dietmar
Hallo Rainer,
klappt wunderbar! Ganz herzlichen Dank!
Ich muss es mal wieder sagen: das ist hier ein wirklich spitzenmäßiges Forum. Ich nutze es nun schon eine ganze Weile und bin immer wieder neu total begeistert wie schnell und kompeten Ihr seid!
Viele Grüße
Dietmar aus Aachen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige