Perfomance Makro EXCEL 2007 bei vielen Grafiken

Liebe Excelianer,

ein Makro, welches in EXCEL 2003 in Sekunden lief, braucht in EXCEL 2007 über 5 Minuten.
Die EXCEL-Tabelle hat ca. 2000 Zeilen und 800 Grafiken.
Über das Makro sollen alle Zellen, auf denen eine Grafik liegt fett formatiert werden:

Dim Grafik as shape

For each Grafik in Activesheet.Shapes
Grafik.TopLeftCell.Format.Bold
next Grafik 

Konvertierung auf das 2007er Format hat leider auch keine Verbesserung der Perofrmance gebracht. Shape(i)-Schleifen sind noch langsamer.

Gibt es vielleicht irgendeine Makrooptimierung/Workaround/Hotfix, welches die Laufzeit auch unter Office 2007 erträglich machen könnte?

Testsystem ist: Win XP, Office 2007 SP2

Bin für jeden Hinweis dankbar, da ich keine Idee mehr dazu habe.

Viele Grüße

Marion Schmidt

ein Makro, welches in EXCEL 2003 in Sekunden lief, braucht in
EXCEL 2007 über 5 Minuten.
Die EXCEL-Tabelle hat ca. 2000 Zeilen und 800 Grafiken.
Über das Makro sollen alle Zellen, auf denen eine Grafik liegt
fett formatiert werden:

Hallo Marion,

zeige bitte die ganze Prozedur.

Das kennst du?:
Application.Calculation =
Application.DisplayAlerts =
Application.EnableEvents =

Gruß
Reinhard

Grüezi Marion

In xl2007 wurde die gesamte Gafik-Engine komplett überarbeitet, was leider ein paar Nachteile und Kinderkraknheiten mit sich brachte.

Versuche doch mal, statt jeden Range einzeln zu verändern, selbige in einen gemeinsamen Range zusammenzufassen und diesen dann nur einmal am Ende einzufärben.

BTW:
Die Zuweisung mit .Font = Bold sollte so eigentlich nicht funktionieren
können - ich habe das mal lauffähig angepasst:

Public Sub tr()
Dim Grafik As Shape
Dim rngShape As Range

 For Each Grafik In ActiveSheet.Shapes
 With Grafik
 If rngShape Is Nothing Then
 Set rngShape = .TopLeftCell
 Else
 Set rngShape = Union(rngShape, .TopLeftCell)
 End If
 End With
 Next Grafik
 rngShape.Font.Bold = True
End Sub

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Thomas,

das ist genau das, nach dem ich gesucht habe!!! Läuft super. Als nicht so EXCEL-Kundige habe ich das mit dem Shaperange selbst leider nicht hinbekommen.

Danke und schönes WE!

Marion

1 „Gefällt mir“

Hallo Reinhard,

…habe ich auch noch in die Prozedur von Thomas eingebaut. Jetzt läuft es wieder richtig schnell.

Danke und schönes WE!

Marion

1 „Gefällt mir“

OT Änderungen in Excelversionen mitbekommen

In xl2007 wurde die gesamte Gafik-Engine komplett
überarbeitet, was leider ein paar Nachteile und
Kinderkraknheiten mit sich brachte.

Grüezi Thomas,

woher weißt du sowas immer?

meine Kenntnisse beziehe ich aus Mitlesen von Forumsbeiträgen bessererer Vbaler oder gelegentlich aus Eigenerlebten.
Stellt sich die Frage woher wissen „die“ sowas.

Irgendwo las ich, als MVP bekommt man von MS „Unterstützung“, gehört solche Informationsweitergabe dazu?

Gruß
Reinhard

Grüezi Reinhard

In xl2007 wurde die gesamte Gafik-Engine komplett
überarbeitet, was leider ein paar Nachteile und
Kinderkraknheiten mit sich brachte.

Grüezi Thomas,

woher weißt du sowas immer?

meine Kenntnisse beziehe ich aus Mitlesen von Forumsbeiträgen
bessererer Vbaler oder gelegentlich aus Eigenerlebten.
Stellt sich die Frage woher wissen „die“ sowas.

Ich selbst habe die Beta von xl2007 schon mitgemacht - die für ‚Insider‘ :wink: nicht bloss die für die Öffentlichkeit.

Damals waren diese Dinge sehr heiss, weil eben längst nicht mehr alles so geklappt hat wie in xl2003 (so z.B. die Makro-Aufzeichnung im Zusammenhang mit allem was Grafiken und Diagramme betrifft - in xl2010 ist das wieder nachgebessert worden).

Es gibt auch äusserst gute Blogs, die über die Neuerungen auf dem Laufenden halten, die lese ich ab und zu mal mit und quer.

Irgendwo las ich, als MVP bekommt man von MS „Unterstützung“,
gehört solche Informationsweitergabe dazu?

Es gibt direkte interne Kontakte zu den Entwicklern in NewsGroups, die teilweise interessante Informationen hergeben.

Aber ansonsten dürfen wir eh nichts weitergeben (da haben wir eine NDA unterzeichnet), das nicht für die Öffentlichkeit bestimmt ist und sonstwo nachgelesen werden kann.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Grüezi Thomas,

woher weißt du sowas immer?

Ich selbst habe die Beta von xl2007 schon mitgemacht - die für
‚Insider‘ :wink: nicht bloss die für die Öffentlichkeit.

ich glaube daß sagtest du schon mal. Aber es bedeutet für mich nur du bekamst von MS eine 2007er Version, die spätere 2007er Version war wohl anders.
Ist ja sehr okay, garantiert hast du und andere zurückgemeldet was klappt, was nicht bzw. schlecht.

Damals waren diese Dinge sehr heiss, weil eben längst nicht
mehr alles so geklappt hat wie in xl2003 (so z.B. die
Makro-Aufzeichnung im Zusammenhang mit allem was Grafiken und
Diagramme betrifft - in xl2010 ist das wieder nachgebessert
worden).

hat MS dir gesagt, hier haste eine neue Version, teste die mal, acte dabei auf Grafiken, Diagrammen?

Es gibt auch äusserst gute Blogs, die über die Neuerungen auf
dem Laufenden halten, die lese ich ab und zu mal mit und quer.
Es gibt direkte interne Kontakte zu den Entwicklern in
NewsGroups, die teilweise interessante Informationen hergeben.

Aha, diese Blogs könnte ich also auch lesen wenn ich wollte, diese „internen“ Infos in newsgroups nicht?

Aber ansonsten dürfen wir eh nichts weitergeben (da haben wir
eine NDA unterzeichnet), das nicht für die Öffentlichkeit
bestimmt ist und sonstwo nachgelesen werden kann.

*hmmh* Dann bin ich nicht für einen MVP geeignet. a) aus Wissensgründen, b) wegen der Weitergabe.

Übertrieben gesagt, wenn ich die Info bekomme unter bestimmten Umständen könnte 2007 alle Daten auf der Festplatte vernichten, dann schweige ich garantiert nicht, egal was ich unterzeichnet habe.

Danke dir für diese Informationen.

Gruß
Reinhard

Grüezi Reinhard

woher weißt du sowas immer?

Ich selbst habe die Beta von xl2007 schon mitgemacht - die für
‚Insider‘ :wink: nicht bloss die für die Öffentlichkeit.

ich glaube daß sagtest du schon mal. Aber es bedeutet für mich
nur du bekamst von MS eine 2007er Version, die spätere 2007er
Version war wohl anders.
Ist ja sehr okay, garantiert hast du und andere zurückgemeldet
was klappt, was nicht bzw. schlecht.

Ja, doch die ganzen neueren Releases in der Beta waren bis zum RTM ebenfalls immer mit dabei.

Damals waren diese Dinge sehr heiss, weil eben längst nicht
mehr alles so geklappt hat wie in xl2003 (so z.B. die
Makro-Aufzeichnung im Zusammenhang mit allem was Grafiken und
Diagramme betrifft - in xl2010 ist das wieder nachgebessert
worden).

hat MS dir gesagt, hier haste eine neue Version, teste die
mal, acte dabei auf Grafiken, Diagrammen?

Die Neuerungen sind/waren schon zu Beginn der Beta bekannt und durch die speziellen Beta-Foren kann man sich auch jeweils austauschen und über Punkte diskutieren.

Im Vorfeld von neuen Releases sind auch immer Umfragen am Laufen, was denn wo und wie neu gemacht, hinzugefügt oder verbessert werden soll (momentan ist das für den Nachfolger von O2010 bereits wieder der Fall…).

Es gibt auch äusserst gute Blogs, die über die Neuerungen auf
dem Laufenden halten, die lese ich ab und zu mal mit und quer.
Es gibt direkte interne Kontakte zu den Entwicklern in
NewsGroups, die teilweise interessante Informationen hergeben.

Aha, diese Blogs könnte ich also auch lesen wenn ich wollte,
diese „internen“ Infos in newsgroups nicht?

Ja, genau so ist es - die ‚internen‘ Newsgroups und Foren stehen unter NDA.

Aber ansonsten dürfen wir eh nichts weitergeben (da haben wir
eine NDA unterzeichnet), das nicht für die Öffentlichkeit
bestimmt ist und sonstwo nachgelesen werden kann.

*hmmh* Dann bin ich nicht für einen MVP geeignet. a) aus
Wissensgründen, b) wegen der Weitergabe.

a)
gilt nicht, denn es ist nicht in erster Linie das Wissen sondern der Einsatz in und füt die Community die zählt.

Übertrieben gesagt, wenn ich die Info bekomme unter bestimmten
Umständen könnte 2007 alle Daten auf der Festplatte
vernichten, dann schweige ich garantiert nicht, egal was ich
unterzeichnet habe.

Das ist aber stark übertrieben - und Du wärest dann ab sofort ‚ehemaliger‘ MVP… :wink:

Sei beruhigt - soooo brisant sind diese News in aller Regel kaum.

Danke dir für diese Informationen.

Aber immer gerne doch.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -