Microsoft Excel

Herbers Excel/VBA-Archiv

Face-Id von Icons in der Symbolleiste

Betrifft: Face-Id von Icons in der Symbolleiste von: Torsten K.
Geschrieben am: 07.09.2004 16:40:44

Hallo beisammen,

vor ein paar Tagen habe ich von P@ulchen ein Add-In erhalten, daß über ein Icon in der Symbolleiste gestartet wird. Die FaceId des Icons lautet z.B. 2107.
Ist es möglich, auch selbst erstellten Icons (über Bearbeiten des Icons) oder Icons, die über Programme, wie z.B. IconArt, erstellt werden, auch eine FaceId zu vergeben und sie dann im Code einzubinden?
Wenn ja, wie funktioniert das?
Besten Dank für Eure Hinweise vorab.

Gruß
Torsten

  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 16:46:42

Hallo Thorsten,
nein, das geht nicht, da sich die Icons die in Excel verwendet werden in einer DLL befinden. Du kannst aber mit der CopyFace - Methode die Icons z.B. aus einer ausgeblendeten Tabelle in den Button kopieren. Benötigst du dazu eine Beispielmappe?
Gruß
Nepumuk


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Torsten K.
Geschrieben am: 07.09.2004 17:05:43

Hallo Nepumuk,

zunächst schönen Dank für Deine schnelle Rückmeldung.
Nein, ich glaube nicht.
Was ich halt schon einmal gemacht habe, ist ein Icon im Programm IconArt auszuwählen, dort zu bearbeiten und zu kopieren und dann in Excel einfach in das Icon einzufügen.
Klappt prima. Diese Vorgehensweise hat aber wohl den Nachteil, daß dieses Icon bei erneutem Aufruf des Add-Ins überschrieben wird, weil im Code ja die andere FaceId steht. Diese Zeile auszukommentieren hilft nicht, weil dann ein Icon ohne Bild eingestellt wird.
Da hilft wohl nichts, oder? Diese DLL kann man nicht erweitern? (Wahrscheinlich sollte man da die Finger weglassen, stimmt's?)
Wenn Du noch Ideen hast.....

Gruß
Torsten


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 17:34:27

Hallo Thorsten,
ich glaube du hast mich falsch verstanden. Das Icon wird in eine Tabelle eingefügt. Daraus wird es per Makro in den Button kopiert. Pack mal dein Icon und das Addin in einen ZIP - Ordner und lade es auf den Server. Dann zeige ich dir, wie das geht.
Gruß
Nepumuk


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Torsten K.
Geschrieben am: 07.09.2004 17:46:50

Hallo Nepumuk,

für Neues bin ich immer zu haben......allerdings habe ich jetzt das Problem, daß ich eine Fehlermeldung erhalte, wenn ich die Datei zum Server hochladen möchte ("Kein Upload möglich"), obwohl es ein erlaubtes Format ist (".xla"). Woran kann denn das jetzt liegen?
(Übrigens auch nicht im .zip-Format) :-((

Gruß
Torsten


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 17:49:25

Hallo Thorsten,
entweder ist der Pfad zu dem ZIP - Ordner zu tief, oder du hast Sonderzeichen bzw. Umlaute in dem Namen.
Gruß
Nepumuk


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Torsten K.
Geschrieben am: 07.09.2004 17:53:24

Hallo Nepumuk,

die Umlaute waren's.....

https://www.herber.de/bbs/user/10634.zip
(AddIn von P@ulchen)


Gruß
Torsten


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 18:15:08

Hallo Thorsten,
da du dein Icon nicht mitgeschickt hast, habe ich mal ein eigenes benutzt. Wenn du an das Bild in der Tabelle kommen willst, gib im Direktfenster einfach

ThisWorkbook.IsAddin = False

ein. Zum ausblenden bzw. speichern als Addin einfach wieder auf True setzen. Wenn du ein anderes Bild in die Mappe einfügst, bekommt das natürlich einen anderen Namen, den du im Namensfenster der Mappe siehst. Den Namen "Bild 1", in der Zeile in der das Bild kopiert wird, einfach durch diesen ersetzen.

https://www.herber.de/bbs/user/10636.zip

Gruß
Nepumuk


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Torsten K.
Geschrieben am: 07.09.2004 18:34:43

Hallo Nepumuk,

vielen Dank für Deine Ergänzungen.
Ich habe allerdings überhaupt nicht geschnallt, wie ich an das Icon in der Tabelle komme.
Wenn ich "ThisWorkbook.IsAddin = False" in das Dirketfenster eingegeben habe, was muß ich dann tun?
Sorry, aber so tief bin ich noch nicht im VBA, daß ich das alles locker nachvollziehen kann. Hast Du noch ein bißchen Geduld mit mir?

Gruß
Torsten


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: P@ulchen
Geschrieben am: 07.09.2004 18:47:34

Hi Torsten,

nach Eingabe im Direktfenster einfach 'Enter', dann solltest Du das Shape im Blatt1 sehen...

@Nepumuk: Klasse Ergänzung, muß man erstmal drauf kommen !



Gruß aus Leipzig
P@ulchen


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 19:00:54

Hallo Paulchen,
danke. Du kannst übrigens die Tabelle(n) eines Addins auch benutzen um Daten zwischenzuspeichern. Du musst im Addin einfach nur mit Thisworkbook arbeiten. Ich drucke auch Tabellen aus Addins aus. Beispiel: https://www.herber.de/bbs/user/10640.xla
Gruß
Nepumuk


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: P@ulchen
Geschrieben am: 07.09.2004 19:14:31

Besten Dank Nepumuk, ich hatte damals den Thread zur Codanalyse verfolgt, jedoch das Endergebnis nicht gesehen. Super Teil, auch der Tip, die im AddIn vorhandene Tabelle für diverse Sachen zu nutzen...manchmal sieht man die naheliegendsten Dinge nicht.



Gruß aus Leipzig
P@ulchen


  


Betrifft: AW: Face-Id von Icons in der Symbolleiste von: Nepumuk
Geschrieben am: 07.09.2004 18:54:59

Hallo Thorsten,
Enter drücken und anschließend zurück zur Excelansicht wechseln. Jetzt ist die Tabelle des Addins eingeblendet und du siehst das Bild. Dieses einfach makieren und Taste "Entf" drücken. Dann über Einfügen - Grafik - Aus Datei dein Icon einfügen. Im Namensfenster (ganz links in der Bearbeitungsleiste) siehst du den Namen des Bildes. Diesen Namen in die Zeile:

ThisWorkbook.Worksheets("Tabelle1").Shapes("Bild 1").CopyPicture

An Stelle von "Bild 1" einfügen. In das Direktfenster:

ThisWorkbook.IsAddin = True

eingeben und Enter drücken. Damit wird die Tabelle wieder ausgeblendet. Das Addin im VBA - Editor speichern, fertig.
Gruß
Nepumuk
P.S. Wenn du nicht zurecht kommst, dann lade dein Icon auf den Server, damit ich es dir einbauen kann.


  


Betrifft: AW: erledigt - mT von: Torsten K.
Geschrieben am: 08.09.2004 09:54:20

Hallo Nepumuk,

jetzt klappt's. Manchmal brauche ich wohl ein bißchen länger.....:-)
Auf jeden Fall herzlichen Dank für Deine Unterstützung und Deine Geduld.
Bis bald...

Gruß
Torsten


 

Beiträge aus den Excel-Beispielen zum Thema "Face-Id von Icons in der Symbolleiste"