Forums Neueste Beiträge
 

Probleme mit Shape-Objekten

21/10/2007 - 09:26 von Manfred Gutacker | Report spam
Hallo liebe Excel-Profis,

habe mal wieder ein Problem.

In einer großen XLS-Datei (7,5 MB), die ich von einem Kollegen zur Analyse
bekommen habe, befinden sich (sichtbar) eine mittelgroße Kalkulation und
ein paar Textboxen und 3 Autoformen.
Eine Untersuchung der Datei zeigte, dass sich hier über 40.000
Shapes-Objekte verbergen.
Ich habe diese per Makro alle gelöscht und dann im Vergleich mit der
Original-Datei die sichtbaren Shapes-Objekte wieder einzeln manuell
eingefügt. Ich konnte die Dateigröße so auf 50 kB reduzieren. Woher die
vielen "nutzlosen" Shapes kommen, müssen wir noch analysieren.

Nun meine Frage: Gibt es eine Möglichkeit, die unsichtbaren Shapes in der
Datei (selektierten Tabelle) zu löschen und die sichtbaren zu belassen.

Habe schon ein wenig experimentiert. Aber Excel straft mich mit
Fehlermeldungen wie" nicht genügend Speicher"...

Über einen erfolgreichen Tipp würde ich mich sehr freuen, da wir so
wertvollen Speicherplatz auf den Serverfestplatten sparen können.

Ich arbeite mit Windows XP Por SP2 und Excel 2003 SP2.

Viele Grüße
Manfred Gutacker
 

Lesen sie die antworten

#1 Lorenz Hölscher
21/10/2007 - 09:36 | Warnen spam
Hallo Manfred,

ich hatte vor ein paar Jahren auch mal so eine Datei erhalten, auf der
"nur" 400 Shapes nutzlos herumlagen. Die waren allerdings nicht
unsichtbar, sondern (wegen eines aufgezeichneten Makros, bei dem
jemand dies Shape gemalt hatte) nur exakt aufeinander gestapelt. Wenn
Du Deine in sichtbare und unsichtbare unterteilen kannst, dann sollten
die sich eigentlich so löschen lassen:
___________________________
Sub UnsichtbareShapesLoeschen()
Dim shpDieses As Shape

For Each shpDieses In ActiveSheet.Shapes
If Not shpDieses.Visible Then
shpDieses.Delete
End If
Next
End Sub
__________________________________

Da ich hier keine 40.000 Shapes einrichten will, kann ich zum
Speicherüberlauf nix sagen.

tschö, Lorenz

Ähnliche fragen