Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
592to596
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
592to596
592to596
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA-Zugriff auf ein Bild ohne Sourcedatei

VBA-Zugriff auf ein Bild ohne Sourcedatei
31.03.2005 23:12:04
Ralf
Hallo zusammen,
wie ich mit VBA ein Bild laden, bzw. als Hintergrund einer Form nutzen kann ist mir bekannt. Was ich jedoch noch nicht herausgefunden habe ist, wie ich ein Bild nutzen kann, welches in einer Excel-Datei bereits existiert, wenn diese Datei z.B. nicht auf meinem Rechner erstellt und ich keinen Zugriff auf die Bild-Datei selbst habe.
Ich kann manuell die Bilddatei anwählen in Excel und mit Copy in die Zwischenablage einfügen. Ich kann dann eine Userform erstellen und in den Eigenschaften eines Anzeige-Objects unter Picture mit Paste dieses wieder aus der Zwischenablage einfügen (Image1.Picture zeigt dann (Metadatei) ).
Bei dem Versuch, dieses per VBA wieder in ein Excel-Sheet (z.B. als Hintergrund einer Textbox) zu importieren bekomme ich jedoch Fehlermeldungen.
Was ich eigentlich möchte ist folgendes:
Ich will Formulare zur Laufzeit eines Makros generieren und benötige ein Logo an einer bestimmten Stelle, ohne dass die Logo-Datei auf dem Userrechner vorhanden sein muss. Gibt es eine Möglichkeit, derartige Informationen im VBA-Code(später dann im AddIn (XLA)), z.B. als Userform zu hinterlegen und weiter zu verarbeiten? Die Userform anzeigen mit Bild klappt ja wunderbar, nützt mir nur im Ausdruck vom Spreadsheet nichts.
Vielen Dank für hilfreiche Tipps,
Ralf.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Zugriff auf ein Bild ohne Sourcedatei
31.03.2005 23:46:10
Beate Schmitz
Hallo Ralf,
Michael Schwimmer hat da eine interessante neue Datei auf seiner HP:
http://michael-schwimmer.de/vba090.htm
Mit diesem Beispiel ist es möglich, Bilder, die in beliebigen Arbeitsmappen als Shapes stecken, auf einer Zeichenfläche in einer Userform darzustellen. Als Nebeneffekt können auch beliebige Bilder, die sich als Bitmap in der Zwischenablage tummeln, angezeigt werden.
Gruß,
Beate
AW: VBA-Zugriff auf ein Bild ohne Sourcedatei
01.04.2005 20:49:36
Ralf
Hallo Beate,
danke für den Tipp. es ist zwar noch nicht so ganz das, wonach ich suche, aber vielleicht hilft es mir, einen Lösungsweg zu finden. Einen näheren Blick ist es auf jeden fall wert.
Gruß, Ralf.
Anzeige
AW: VBA-Zugriff auf ein Bild ohne Sourcedatei
01.04.2005 00:10:26
K.Rola
Hallo,
ein Add-In muss min. ein Blatt haben, wie jede andere Excelmappe.
Deponier das Logo dort, dann kannst du es mit copy & paste in die andere
Mappe übertragen.

Gruß K.Rola

Der Fleiß ist die Wurzel aller Häßlichkeit.

Oscar Wilde


AW: VBA-Zugriff auf ein Bild ohne Sourcedatei
01.04.2005 20:55:34
Ralf
Hallo,
Hm. Aha. Ok. :) Wie ist dann aber der Zugriff auf Daten der XLA-Tabelle zu programmieren? Mit ActiveSheet, ActiveWorkbook o.ä. dürfte es wohl zu einer Fehlermeldung kommen, oder?
Wie definiere ich einen Zugriff wie zum Beispiel:
intZellwert = Cells(1,1).Value
wenn die Zelle A1 des AddIn's gemeint ist? Sorry, habe bis dato nur mit Makros in den jeweiligen oder gleichzeitig geöffneten Arbeitsmappen gearbeitet. Die AddIn-Sache ist etwas Neuland...
Gruß, Ralf.
Anzeige
AW: VBA-Zugriff auf ein Bild ohne Sourcedatei
01.04.2005 21:43:42
K.Rola
Hallo,
am einfachsten ist es, wenn du den Codenamen des Blatts im Add-in verwendest. Den solltest
du aber zuvor umbenennen z.B. ADDIN_BLATT
Nun kannst du mit: ADDIN_BLATT.Cells(1 ,1) darauf zugreifen.
Du kannst aber auch: Thisworkbook.Sheets("DeinBlattnameimAddin").Cells(1, 1)
Thisworkbook ist immer das, in welchem der Code ausgeführt wird, also dein Add-In.
Dritte Möglichkeit, du setzt eine Objektvariable, z.B. Dim TW as Workbook
Falls dein Add-In einen Dialog hat, initialisierst du die z.B in
Private Sub UserForm_Initialize()
Set TW = Thisworkbook.Sheets("DeinBlattnameimAddin")
End Sub

Gruß K.Rola

Der Fleiß ist die Wurzel aller Häßlichkeit.

Oscar Wilde


Anzeige

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige