Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Löschen von Groups (Namen ändern sich im File)
zurück: Message-Box während Hintergrundverarbeitung anzeigen - WIE?? weiter: Inhalte Löschen kompliziert - am verzweifeln Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Bitte Status wählen ! Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
annika231
Gast


Verfasst am:
16. Aug 2007, 17:11
Rufname:

Löschen von Groups (Namen ändern sich im File) - Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hallo,

ich lösche in meinem Tool beim Speichervorgang mehrere Shapes

z.B.
ActiveSheet.Shapes("Group 81").Delete
ActiveSheet.Shapes(CommandButton1").Delete
ActiveSheet.Shapes("Rectangle 84").Delete

Jetzt bekomme ich immer wieder Fehlermeldungen, da sich die Namen (Group 81...)
ändern. Irgendwie sind die nicht fest adressiert.

Gibt es eine Möglichkeit diese fest zu adressieren, oder noch bessern,
gibt es einen Befehl in der Art
"lösche alle Shapes (damit meine ich alle CommandButtons, Groups und Rectangles) vom ActiveSheet.

Vielen Dank für Eure Hilfe

Annika
GeDe
Pauker


Verfasst am:
16. Aug 2007, 17:50
Rufname:


AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

hi,

so auf die Schnelle fällt mir folgendes ein:

Code:

Sub shapes_löschen()
   
    On Error Resume Next

    Dim  i As Integer
   
     For i = 1 To ActiveSheet.Shapes.Count
        ActiveSheet.Shapes(1).Delete
    Next

End Sub


Gruß

GeDe
annika231
Gast


Verfasst am:
17. Aug 2007, 08:42
Rufname:

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hallo,
danke für die Antwort.

Bedeutet dieser Code, dass ein Zähler bei 1 beginnt und dann sozusagen Prüft, ob es Shape 1 gibt und falls nicht weitergeht zu Shape 2.

Wie hoch zählt dieser Zähler dann? bzw. wann bricht er ab.

Noch eine allgemeine Frage:
Das "On Error Resume";
unterdrückt das die Fehlermeldung (Debugger).

D.h. kann ich allgemein schreiben:

ActiveSheet.Shape(1).Delete
On Error Resume

und dies bewirkt dann, dass sollte es Shape 1 geben, diese gelöscht wird. Gibt es
aber keine Shape 1 erscheint keine Fehlermeldung und der Code wird einfach in der nächsten Zeile weiter abgearbeitet.

Danke für die Hilfe

Annika
Morfium
Vba Anfänger


Verfasst am:
17. Aug 2007, 10:34
Rufname:

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hi!

Müsste es nicht
Code:
ActiveSheet.Shapes(i).Delete

sein?

Zitat:
Wie hoch zählt dieser Zähler dann? bzw. wann bricht er ab.


er zählt bis zur Anzahl alles Shapes.

For i = 1 To ActiveSheet.Shapes.Count
entspricht:
Zähle i von 1 bis zur Anzahl alles Shapes in Einerschritten aufwärts.

Er bricht ab sobald i größer als die Anzahl der Shapes in deinem Projekt ist.

Zitat:
D.h. kann ich allgemein schreiben:

ActiveSheet.Shape(1).Delete
On Error Resume


Du musst
Code:
On Error Resume Next
ActiveSheet.Shape(1).Delete

schreiben wenn ich nicht irre, da die Anweisungen nach dem On Error berücksichtigt werden. Und ja, das unterdrückt die Fehlermeldungen und ignoriert fehlerhafte Zeilen einfach.

_________________
Du hast keine Chance, nutze sie!
annika231
Gast


Verfasst am:
17. Aug 2007, 10:53
Rufname:


AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Danke,

der Code, den du mir genannt hast

On Error Resume Next
ActiveSheet.Shape(1).Delete

....gilt dann das "Resmume Error" nur für die darauffolgende Zeile (also in diesem Fall für Shape 1, oder werden dann alle Error bis zu End Sub unterdrückt.

Danke!
Morfium
Vba Anfänger


Verfasst am:
17. Aug 2007, 11:02
Rufname:

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Soweit ich weiß bis zum End Sub.
_________________
Du hast keine Chance, nutze sie!
GeDe
Pauker


Verfasst am:
17. Aug 2007, 12:43
Rufname:

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hi zusammen,

Das Error Resume Next ist drin, damit er keinen Fehler bringt, falls man das Makro ausführt, aber keine Shapes auf dem Blatt sind. Also muß ich das vorher abfangen.

ActiveSheet.Shape(1).Delete löscht immer das erste Objekt

ActiveSheet.Shape(i).Delete würde beim ersten mal zwar das erste Objekt löschen, beim zweiten Schleifendurchlauf aber das zweite von den übriggebliebenen Objekten und das jetzt erste, vorher zweite würde stehenbleiben.

Gruß

GeDe
Kuwe
Excel-Anwender mit VBA


Verfasst am:
17. Aug 2007, 12:48
Rufname: Uwe

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hallo Annika,

so werden alle grafischen Objekte gelöscht:

Code:
Sub shapes_loeschen()
  ActiveSheet.DrawingObjects.Delete
End Sub

_________________
Gruß Uwe
annika231
Gast


Verfasst am:
17. Aug 2007, 13:48
Rufname:

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hallo Uwe,

super, vielen Dank, das ist die einfachste Lösung und macht genau, was es auch soll.

Da stellt sich für mich die nächste Frage.

Gibt es irgendeine Website oder ein Verzeichnis, in dem man solche VBA Codes
(wie z.B. ActiveSheet.DrawingObjects.Delete)
nachlesen bzw. rausfinden kann?
Morfium
Vba Anfänger


Verfasst am:
17. Aug 2007, 14:01
Rufname:

Re: AW: Löschen von Groups (Namen ändern sich im File) - Re: AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

GeDe - 17. Aug 2007, 12:43 hat folgendes geschrieben:
Hi zusammen,

Das Error Resume Next ist drin, damit er keinen Fehler bringt, falls man das Makro ausführt, aber keine Shapes auf dem Blatt sind. Also muß ich das vorher abfangen.

ActiveSheet.Shape(1).Delete löscht immer das erste Objekt

ActiveSheet.Shape(i).Delete würde beim ersten mal zwar das erste Objekt löschen, beim zweiten Schleifendurchlauf aber das zweite von den übriggebliebenen Objekten und das jetzt erste, vorher zweite würde stehenbleiben.

Gruß

GeDe


agrs... das dacht ich mir schon fast, darum hab ich lieber nur gefragt. ^^

@annika

dieses Forum Smile
mehr fällt mir leider grad nicht ein.

_________________
Du hast keine Chance, nutze sie!
Kuwe
Excel-Anwender mit VBA


Verfasst am:
17. Aug 2007, 14:06
Rufname: Uwe

AW: Löschen von Groups (Namen ändern sich im File) - AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hallo Annika,

im Prinzip ist solch eine Übersicht schon im VBA-Editor enthalten: Im Projektexplorer

Allerdings ist unter anderen gerade dieses DrawingsObjects standardmäßig ausgeblendet.
Warum, weiß nur Bill. Ist wahrscheinlich zu trivial, denn es wird von Version zu Version immer weiter verschlimmbessert.
Aber wenn Du gerade diese Aktion mit dem Makrorekorder aufzeichnest,
erhältst Du genau das. (F5, Inhalte, Objekte, OK)

_________________
Gruß Uwe
GeDe
Pauker


Verfasst am:
17. Aug 2007, 15:29
Rufname:


Re: AW: Löschen von Groups (Namen ändern sich im File) - Re: AW: Löschen von Groups (Namen ändern sich im File)

Nach oben
       Version: Office XP (2002)

Hi Uwe,

Uwe Küstner - 17. Aug 2007, 12:48 hat folgendes geschrieben:
Hallo Annika,

so werden alle grafischen Objekte gelöscht:

Code:
Sub shapes_loeschen()
  ActiveSheet.DrawingObjects.Delete
End Sub


Hübsch!

Ein Hoch auf Bill das hätten die ja bei Shape auch mit einbauen können...

_________________
Was rief Bill Gates, als er von seiner Yacht ins Meer fiel? ..... "F1, F1" Very Happy

21 ist nur die halbe Wahrheit!

Nicht alles, was Gold ist, glänzt.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Namen suchen 1 Wilfried 606 29. Aug 2005, 12:42
fl618 Namen suchen
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Excel Formeln: Automatisches Löschen von Zeileninhalt 1 Automatix 785 29. Jul 2005, 16:10
fl618 Automatisches Löschen von Zeileninhalt
Keine neuen Beiträge Excel Formeln: zellfarbe bei erfüllter bedingung ändern, aber in der formel 2 jode333999aa 5328 21. Jul 2005, 14:55
jode333999aa zellfarbe bei erfüllter bedingung ändern, aber in der formel
Keine neuen Beiträge Excel Formeln: Löschen von Wörtern in einem Satz 3 MartinJungwirth 795 13. Jul 2005, 15:51
MartinJungwirth Löschen von Wörtern in einem Satz
Keine neuen Beiträge Excel Formeln: Excel Verknüpfungen löschen 9 Acidcool73 15705 15. Jun 2005, 16:03
Gast Excel Verknüpfungen löschen
Keine neuen Beiträge Excel Formeln: Zellen nach einer bedingung löschen 2 Dan0032 567 25. Apr 2005, 07:01
Dan0032 Zellen nach einer bedingung löschen
Keine neuen Beiträge Excel Formeln: Zwei Namen vergleichen und Summe bilden 2 Gast 1492 29. März 2005, 17:45
Gast Zwei Namen vergleichen und Summe bilden
Keine neuen Beiträge Excel Formeln: Leerezeichen automatisch nach Wort löschen 1 23Maximus 775 18. März 2005, 15:59
rainberg Leerezeichen automatisch nach Wort löschen
Keine neuen Beiträge Excel Formeln: Wortformat ändern 3 traum1954 769 19. Feb 2005, 21:01
ae Wortformat ändern
Keine neuen Beiträge Excel Formeln: NBVAL findet mehr Namen als es gibt. 12 Aloha 1079 02. Feb 2005, 14:05
Aloha NBVAL findet mehr Namen als es gibt.
Keine neuen Beiträge Excel Formeln: Zeilen mit doppelten Werten löschen 6 Sebowsky 1208 06. Jan 2005, 22:26
Sebowsky Zeilen mit doppelten Werten löschen
Keine neuen Beiträge Excel Formeln: HIFE!!! gewisse zeilen löschen 2 Stevie0130 1580 12. Dez 2004, 18:35
Gast HIFE!!! gewisse zeilen löschen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks