Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1772to1776
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

Desktop Icon bei Verknüpfung

Desktop Icon bei Verknüpfung
06.08.2020 14:15:32
Michel
Moin liebe Freunde des Tabellenblattes,
in gewissen Punkten bin ich leider ein echter Nerd oder auch sehr penibel.
In Access gibt es ja die Möglichkeit das Anwendungssymbol zu ändern (speziell das von nur einer Datei).
Was ich bisher mitbekommen habe, geht dies bei Excel nicht so leicht.
Jedoch habe ich diesem und anderen Forum schon entnommen, dass man es bei einer Verknüpfung zur Datei ändern könnte.
Leider sind die Beispieldatei, die es dazu mal gab nicht, nicht mehr vorhanden.
Ich würde gerne per Cmd Button die Möglichkeit haben, eine Verknüpfung der Datei auf den Desktop ablegen zu lassen. Diese Verknüpfung soll dann das personalisierte Icon von mir haben. Da ich diese Datei sehr wahrscheinlich auf ein Gruppenlaufwerk platzieren werde, wäre es schön, wenn das Icon aus der Exceldatei stammt und nicht extra abgelegt werden muss.
Vielleicht hat ja jemand von euch eine gute Idee und kann mir helfen.
Liebe Grüße von der Elbe
Michel

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Desktop Icon bei Verknüpfung
06.08.2020 15:56:58
volti
Hallo Michel,
hier schon mal eine Idee, wie Du die Verknüpfung mit eigenem Icon machen könntest.
Vielleicht fällt mir oder jemand anderem ja noch ein, wie man es aus der Datendatei extrahiert.
Denke allerdings, das wird schwierig.
Die Idee, es vorher aus einem Bild auf die Platte zu speichern, bringt einen, so es funktioniert, jetzt auch nicht viel weiter.
Option Explicit Public Sub Verknuepfung_Erstellen() 'Legt eine Verknüpfung mit eigenem Icon an für 'Dateien mit 4er Suffix Dim oLink As Object Dim sFilename As String, sPathname As String sPathname = ThisWorkbook.Path & "\" sFilename = ThisWorkbook.Name On Error GoTo Fehler With CreateObject("WScript.Shell") With .CreateShortcut(.SpecialFolders("Desktop") & "\" _ & Replace(sFilename, Right(sFilename, 5), ".lnk")) .TargetPath = sPathname & sFilename .IconLocation = "C:\ControlApp\Schlumpf.ico" .Save End With End With Fehler: End Sub
viele Grüße aus Freigericht
Karl-Heinz

Anzeige
AW: Desktop Icon bei Verknüpfung
06.08.2020 21:02:24
Michel
Hallo Karl-Heinz,
vielen vielen lieben Dank! Das klappt schon einmal super!!!
Ich habe gerade folgende Seite gefunden, jedoch weiß ich ncih ob das zu deinem funktionierenenden Code passt, da ich mich gerade erstmal mit VBA versuche.
http://www.office-loesung.de/ftopic612264_0_0_asc.php
Liebe Grüße
Michel
AW: Desktop Icon bei Verknüpfung
07.08.2020 00:28:01
volti
Hallo Michel,
den Artikel habe ich gelesen, allerdings werden die Bilder als jpg oder als bmp exportiert.
Selbst wenn, wie angeführt, BMP-Dateien als Icon eingebunden werden könnten, fehlt ihnen jedoch mindestens eine Eigenschaft:
Der Urtyp aller Bilddateien hat keine transparente Farbe. Mit jpg und png habe ich mich jetzt nicht rumgeschlagen, sondern mal eine andere Idee verfolgt.
Ico-Dateien sind 16x16 bzw. 32x32 Pixel groß, also eher klein. Warum die Binärdaten nicht einfach in einem Excelsheet speichern....
Falls Du also das Bild in Excel nicht unbedingt sehen musst, können wir es in einem hidden Sheet "Icon" als Daten einfügen, und später für den Link verwenden.
Genau das macht folgendes Makro:
Probiere es einfach mal aus:
[+][-]
Sub Verknuepfung_Erstellen() 'Legt eine Verknüpfung mit eigenem Icon an für 'Dateien mit 4er Suffix Dim sData As String, iff As Integer, iZeile As Long Dim oLink As Object Dim sFilename As String, sPathname As String, sLinkFile As String sPathname = ThisWorkbook.Path & "&bsol;" 'Pfad zur Datei sFilename = ThisWorkbook.Name 'Exceldatei On Error GoTo Fehler With CreateObject("WScript.Shell") With .CreateShortcut(.SpecialFolders("Desktop") & "&bsol;" _ & Replace(sFilename, Right(sFilename, 5), ".lnk")) .TargetPath = sPathname & sFilename 'Icon-Daten aus dem Sheet "Icon" auslesen With Sheets("Icon") For iZeile = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(iZeile, "A").Value = "#End" Then Exit For sData = sData & Chr(Val(.Cells(iZeile, "A").Value)) Next iZeile iff = FreeFile On Error Resume Next sLinkFile = Environ("TEMP") & "&bsol;" & .Cells(1, "A").Value Kill sLinkFile 'vorh. Ico-Datei löschen Open sLinkFile For Binary As iff Put iff, , sData: Close iff End With .IconLocation = sLinkFile 'Icon setzen .Save 'Link speichern End With End With Fehler: End Sub Sub LoadIconDataInSheet() 'Icon-Daten in Tabelle sichern Dim sData As String, sFilename As String, sPathname As String Dim iff As Integer, iZeile As Long sPathname = "C:&bsol;ControlApp&bsol;" 'Hier den Pfad zum Ico angeben sFilename = "gagamel.ico" 'Hier die Ico-Datei angeben If Dir(sPathname & sFilename) <> "" Then iff = FreeFile Open sPathname & sFilename For Binary As iff sData = Space$(LOF(iff)) 'Ico-Daten einlesen Get iff, , sData 'und in Variable schaffen With Sheets("Icon") 'Blatt Icon muss vorhanden sein .Cells.Clear 'Alte Daten löschen .Cells(1, "A").Value = sFilename 'Dateinamen sichern For iZeile = 1 To Len(sData) 'Ico-Daten in Blatt schreiben .Cells(iZeile + 1, "A").Value = Asc(Mid(sData, iZeile, 1)) Next iZeile .Cells(iZeile + 1, "A").Value = "#End" 'Endepoint setzen .Visible = xlVeryHidden 'Blatt ausblenden End With Close iff 'Ico-Datei schließen End If End Sub
viele Grüße aus Freigericht
Karl-Heinz

Anzeige
AW: Desktop Icon bei Verknüpfung
10.08.2020 19:51:50
Michel
Hallo Karl-Heinz,
leider funktioniert dein zweiter Code nicht. Es wird zwar eine Verknüpfung erstellt, jedoch sieht man das Icon nicht. Auch das Blatt Icon ist leer.
Aber eine Verstädnisfrage habe ich. Wenn der zweite Code klappen würde, müsste ich dann die Datei nur einmal "hochladen" damit sie in der Datei beleibt und ich keine Verküpfung zu einer .ico datei machen muss oder muss immer eine Verknüpfung zum Icon haben?
Liebe Grüße
Michel
AW: Desktop Icon bei Verknüpfung
10.08.2020 19:52:47
Michel
Aber was ich fast vergessen hätte:
Jetzt schon mal ein ganz ganz großes DANKE!!!!
LG Michel
AW: Desktop Icon bei Verknüpfung
10.08.2020 20:57:32
volti
Hallo Michel,
ich habe gerade auch noch mal probiert, geht einwandfrei. Habe allerdings nur von Festplatte probiert.
Was meinst Du mit zweiten code? Die Funktion LoadIconDataInSheet?.
Hast Du damit auch eine Datei ausgesucht und importiert?
Vorgehensweise:
Mittels LoadIconDataInSheet wählt man ein Ico-Datei aus, das Tool öffnet die Datei und schreibt die Daten ins Blatt 'Icon'. Im ersten Feld steht übrigens der Dateiname.
Die Daten bleiben im Tool und es kann jederzeit hieraus eine Verknüpfung kreiert werden. (So als wäre ein Bild drin)
Wenn das Blatt Icon leer ist, kann zwar eine Verknüpfung erstellt werden, aber ohne Bild natürlich.
Im Prinzip könnte man in jeder weiteren Spalte ein weiteres Bild (also die Daten dazu) speichern.
Da die Daten zum Anschauen nutzlos sind, sollte man das Blatt dann ausblenden.
Zum Erstellen der Verknüpfung (das kann ich nur von einer Datei aus) werden die Daten in eine Datei in Deinem temporäres Verzeichnis geschrieben. Diese Datei kann später einfach gelöscht werden.
viele Grüße
Karl-Heinz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige