Post by Bernd PPost by Alexander Wolff...
Schade, dass Du den Punkt 2 Deiner "Don'ts" nicht erläuterst. Erstens
schreibst Du "SUMPRODUCT/COUNTIF" (wo ich "SUMIF/COUNTIF" erwarten
würde, oder nur "SUMPRODUCT/{SUM}"), und zweitens habe ich den
Artikel von Williams zwar mal gelesen, aber da er lang ist, brauchte
es doch eine etwas genauere Lokalisierung der Stelle. Außerdem gibt
es Änderungen ab Excel 12, die vorher nicht gelten. Ich verwende
Excel 12 nicht. ...
Hallo Alexander,
[OT]
Danke fuer den Hinweis. Die Webseite wurde stark geaendert. Relevant
http://msdn.microsoft.com/en-us/library/aa730921.aspx#Office2007excelPerf_WhyCalculationSpeedImportant
SUMPRODUCT/COUNTIF ist weiter richtig, aber ich werde den Hinweis
etwas detaillieren. Dieser Tipp ist IMHO von der Excel Version
unabhaengig.
1. Es gibt die Funktionen SUMIF und COUNTIF, die syntaktisch ähnlich sind.
Dann gibt es SUMPRODUKT und {SUM}, die demggü anders sind. In welchem
Zusammenhang aber sprichst Du von SUMPRODUCT/COUNTIF, also zwei Funktionen
aus zwei Familien? - Ah - jetzt verstanden: Du meintest tatsächlich Division
miteinander - ist das aber nicht ein bisschen exotisch?
Außerdem wird dort im Beispiel der Speedgewinn-Faktor von 226 durch
Verwendung von VBA nur durch ein zusätzliches Erfordernis (Sortierung) an
die Daten (Speziallogik der Formel) erreicht! Das kann meine Oma auch. Man
könnte generell sagen:
a) Die Verwendung von etwas Grips für Formeln oder auch Modelle kann
Größenordnungen bedeuten
b) Ein ähnliches Thema ist die Anordnung von optimiertem Code für
Parallel-Computing - oft geht so etwas nur durch menschliche Intelligenz.
c) Bei häufig notwendiger Recalculation schon bei der Eingabe lösche ich
Formelbereiche bis auf den ersten Eintrag, und fülle dann immer bei Bedarf
nach unten und rechts die Formeln wieder aus. Das nur als Tipp für
VBA-Ungeübte.
Ich habe mal vor längerer Zeit zum Thema SUM/SUMPRODUCT/DSUM/SUMIF getestet:
http://xxcl.de/0038.htm
2. COUNTU steht in dem Artikel ca. bei 50% der Textlänge, nicht bei 10%
(Schieberegler)
http://msdn.microsoft.com/en-us/library/aa730921.aspx#Office2007excelPerf_FindingPrioritizingCalculationBottlenecks
(und dann noch etwas weiter unten). Ich habs dann durch Suchen nach COUNTU
gefunden.
--
Moin+Gruss Alexander - MVP for MS Excel - www.xxcl.de - mso2000sp3 --7-2