Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Grafiken einfügen und löschen

Grafiken einfügen und löschen
Runner2907
hallo forum
ich füge mit folgendem VBA Code eine Grafik ein:
If Range("b29") = 1 Then
Set p = Sheets("Eingabe").Pictures.Insert("c:\Kalenderbilder\Mondphasen\01022010.gif")
With Sheets("Eingabe").Range("A17")
p.Left = .Left
p.Top = .Top
p.Height = 117
p.Width = 117
End With
Else: GoTo Mondab85
End If
und versuche sie zu löschen mit folgendem vba code, was aber nicht funktioniert:
Dim xshape As DrawingObjects
On Error GoTo Ende
For Each xshape In ActiveSheet.DrawingObjects
xshape.Delete
Next xshape
Ende:
Ich hab auch schon anstatt der "drawingobjects" "pictures" und "shapes" versucht...alles ohne erfolg...
was läuft falsch?
gruss
frank
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Dim xshape As Object
16.02.2010 13:17:22
Björn
Hallo,
du musst schon deine Variablen richtig deklarieren.
Drawingobjects ist doch kein Variablentyp!!!
Gruß
Björn B.
AW: Grafiken einfügen und löschen
16.02.2010 13:17:57
Hajo_Zi
Hallo Frank,
siehe Die diese Seiten an.
http://hajo-excel.de/inhalt_vba_bild.htm

Anzeige
AW: Grafiken einfügen und löschen
16.02.2010 13:38:01
Runner2907
danke...aber hat mich beides noch nicht wirklich weiter gebracht....
Warum nicht?
16.02.2010 13:42:25
Björn
Warum bringt Dich mein Code nicht weiter?
Du hattest Deine Variable falsch definiert.
Das habe ich Dir geschrieben und auch, wie Du sie richtig definierst.
Ich habe das bei mir getestet und es hat funktioniert.
Wo ist bei Dir noch das Problem?
Gruß
Björn B.
Anzeige
AW: Warum nicht?
16.02.2010 13:59:29
Runner2907
Hallo björn,
hab es so umgesetzt:
Sheets("Eingabe").Select
Dim xshape As Object
On Error GoTo Ende
For Each xshape In ActiveSheet.Objects
xshape.Delete
Next xshape
Ende:
wo ist mein fehler?
gruss
frank
AW: Warum nicht?
16.02.2010 14:03:13
Björn
Sorry, ich hätte auf dein VBA-Level achten sollen...
Also erst mal der Richtige Code:
Sheets("Eingabe").Select
Dim xshape As Object
On Error GoTo Ende
For Each xshape In ActiveSheet.Shapes
xshape.Delete
Next xshape
Ende:
War da etwas zu schnell vorhin. Dachte, dass Dir der Hinweis reicht.
Gruß
Björn B.
Anzeige
AW: Grafiken einfügen und löschen
16.02.2010 13:40:12
Josef
Hallo Frank,

um alle Shapes einer Tabelle zu löschen braucht's keine Schleife.

ActiveSheet.Shapes.SelectAll
Selection.Delete

Gruß Sepp

Anzeige
AW: Grafiken einfügen und löschen
16.02.2010 13:56:08
Runner2907
Hallo Sepp,
danke das funktioniert. aber das löscht mir alles...auch die buttons...wie kann ich selektiv die grafik löschen, die ich in a17 einfüge, löschen..
gruß
frank
AW: Grafiken einfügen und löschen
16.02.2010 14:01:45
Josef
Hallo Frank,

hab ich ja geschrieben "um alle Shapes...".
Gib deinem Bild beim einfügen einen Namen z.B.
With Sheets("Eingabe").Range("A17")
  p.Name = "pic_" & .Address(0, 0)
  p.Left = .Left
  p.Top = .Top
  p.Height = 117
  p.Width = 117
End With

dann kannst du dich beim Löschen genau auf diese Shape beziehen.
ActiveSheet.Shapes("pic_A17").Delete


Gruß Sepp

Anzeige
AW: Grafiken einfügen und löschen
16.02.2010 14:25:17
Runner2907
hallo sepp...
so klappt es danke...
gruss
frank
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige