HERBERS Excel-Forum - das Archiv
Code umstellen
friedel

https://www.herber.de/bbs/user/99072.xls
Einen schönen Sontag euch allen,
ich habe mir die obige Excel Datei heraus gesucht ,und hätte diese gerne etwas geändert.
Und zwar wenn Start Bsp. gestartet wird und das userform1 Fenster sich öffnet wird ein Bild ausgewählt.
Dieses ausgewählte Bild sollte dann in Tabelle A1 abgelegt werden .
vielen Dank für die Hilfe
schöne Grüße friedel

AW: Code umstellen
Sepp

Hallo Friedel,
und woher sollen die Bilder kommen? Sollen die Fix im UF hinterlegt sein, oder von der Festplatte ausgewählt werden?
Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp,
die Bilder werden zuerst einmal in Tabelle2 hinterlegt

AW: Code umstellen
Daniel

Hi
dazu folgene drei Zeilen im Change-Event der Combobox:
    Tabelle2.Shapes(ComboBox1.List(, 1)).Copy
Application.Goto Tabelle1.Cells(1, 1)
ActiveSheet.Paste

die erste zeile kannst du auch weglassen, da du ja das Bild schon kopiert und im Zwischenspeicher hast.
Gruss Daniel

AW: Code umstellen
Sepp

Hallo Friedel,
ersetze den Code "ComboBox1_Change()" im Modul des UF durch folgenden.
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex > -1 Then
  Tabelle2.Shapes(ComboBox1.List(, 1)).CopyPicture xlScreen, xlBitmap
  Tabelle1.Range("A1").Select
  Tabelle1.Paste
End If
End Sub


Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp ,
funktioniert super
aller besten dank
schönen Sontag noch
Gruß friedel

AW: Code umstellen
friedel55

Hallo noch mal,
Um vielleicht doch von der Festplatte auswählen zu können wie müsste die Formel denn dann umgestellt werden?
Schöne Grüße friedel

AW: Code umstellen
friedel55

oh noch was,
das vorherige Bild auf A1, müsste beim Einfügen zuerst immer gelöscht werden.
So wie jetzt liegen immer welche aufeinander.
Gruß friedel

AW: Code umstellen
Sepp

Hallo Friedel,
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex > -1 Then
  delPicture
  Tabelle2.Shapes(ComboBox1.List(, 1)).CopyPicture xlScreen, xlBitmap
  Tabelle1.Range("A1").Select
  Tabelle1.Paste
End If
End Sub


Private Sub delPicture()
Dim objShp As Shape

For Each objShp In Tabelle1.Shapes
  If objShp.Type = msoPicture Then objShp.Delete
Next
End Sub


Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp,
danke
Gruß friedel

Code umstellen
friedel

https://www.herber.de/bbs/user/99072.xls
Einen schönen Sontag euch allen,
ich habe mir die obige Excel Datei heraus gesucht ,und hätte diese gerne etwas geändert.
Und zwar wenn Start Bsp. gestartet wird und das userform1 Fenster sich öffnet wird ein Bild ausgewählt.
Dieses ausgewählte Bild sollte dann in Tabelle A1 abgelegt werden .
vielen Dank für die Hilfe
schöne Grüße friedel

AW: Code umstellen
Sepp

Hallo Friedel,
und woher sollen die Bilder kommen? Sollen die Fix im UF hinterlegt sein, oder von der Festplatte ausgewählt werden?
Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp,
die Bilder werden zuerst einmal in Tabelle2 hinterlegt

AW: Code umstellen
Daniel

Hi
dazu folgene drei Zeilen im Change-Event der Combobox:
    Tabelle2.Shapes(ComboBox1.List(, 1)).Copy
Application.Goto Tabelle1.Cells(1, 1)
ActiveSheet.Paste

die erste zeile kannst du auch weglassen, da du ja das Bild schon kopiert und im Zwischenspeicher hast.
Gruss Daniel

AW: Code umstellen
Sepp

Hallo Friedel,
ersetze den Code "ComboBox1_Change()" im Modul des UF durch folgenden.
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex > -1 Then
  Tabelle2.Shapes(ComboBox1.List(, 1)).CopyPicture xlScreen, xlBitmap
  Tabelle1.Range("A1").Select
  Tabelle1.Paste
End If
End Sub


Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp ,
funktioniert super
aller besten dank
schönen Sontag noch
Gruß friedel

AW: Code umstellen
friedel55

Hallo noch mal,
Um vielleicht doch von der Festplatte auswählen zu können wie müsste die Formel denn dann umgestellt werden?
Schöne Grüße friedel

AW: Code umstellen
friedel55

oh noch was,
das vorherige Bild auf A1, müsste beim Einfügen zuerst immer gelöscht werden.
So wie jetzt liegen immer welche aufeinander.
Gruß friedel

AW: Code umstellen
Sepp

Hallo Friedel,
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex > -1 Then
  delPicture
  Tabelle2.Shapes(ComboBox1.List(, 1)).CopyPicture xlScreen, xlBitmap
  Tabelle1.Range("A1").Select
  Tabelle1.Paste
End If
End Sub


Private Sub delPicture()
Dim objShp As Shape

For Each objShp In Tabelle1.Shapes
  If objShp.Type = msoPicture Then objShp.Delete
Next
End Sub


Gruß Sepp

AW: Code umstellen
friedel55

Hallo Sepp,
danke
Gruß friedel

Dialog-Beispiele
Bewerten Sie hier bitte das Excel-Portal