Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1296to1300
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Performancefrage

Performancefrage
17.02.2013 11:35:23
Maximilian
Hallo,
würde gerne eine Meinung zu einer Performance-Frage haben.
Ich suche die Zeile eines Eintrags in einer Tabelle per =VERGLEICH(Benutzer, Range("A:A"),0)
Grundsätzlich habe ich aktuell 20 Benutzer, es werden eventuell noch ein paar mehr. Aber auf keinen Fall mehr als 50 beispielsweise.
Sollte ich daher den Suchrange A:A auf A1:A50 begrenzen? Schaffe ich damit mehr Performance? Oder ist das Prinzipiell egal?
Es geht nicht um eine Suchanfrage sondern auch um viele sverweise, die die Benuterdaten des aktuellen Benutzers anzeigen.
Danke für eure Meinung

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Performancefrage
17.02.2013 12:53:17
Sheldon
Hallo Maximilian,
beim Sverweis und vielen anderen Formeln ist egal, wie groß Du den Suchbereich definierst. Das macht sich nur bei Matrixformeln schnell bemerkbar. Die Performace wird im Wesentlichen beeinträchtigt durch eine große Anzahl von Zellen mit Formeln drin, die voneinander abhängig sind. Daher empfiehlt es sich, Formeln z. B. nur in der ersten Zeile eines berechneten Tabellenbereichs zu belassen und die darunter liegenden Zeilen zu kopieren und als Wert einzufügen. Will man dann die Berechnung aktualisieren oder die Formeln verändern, macht man das in der ersten Formelzeile und kopiert diese Formeln dann wieder herunter über die Werte.
Gruß
Sheldon

Anzeige
AW: Performancefrage
17.02.2013 13:13:48
Maximilian
Vielen Dank für die ausführliche Antwort, Sheldon!!

AW: Performancefrage
18.02.2013 10:32:57
Daniel
HI
meiner Erfahrung nach ist das bei deiner Excelversion egal.
in Excel 2007 habe ich aber die Erfahrung gemacht, daß ein offener Zellbezug a la A:A langsamer verarbeitet wird als ein genau definierter (A1:A50)
wenn du die Performance wirkungsvoll steigern willst, dann ist die beste Methode, die Suchmatrix zu sortieren und dann mit =VERGLEICH(Benutzer, Range("A:A"),1) zu arbeiten (was aber bei deiner Datenmenge noch nicht erforderlich ist)
wenn du viele SVerweise hast, die sich auf die gleiche Zeile der Suchmatrix aber in unterschiedlichen Spalten beziehen, dann ist es sinnvoll, in einer Hilfsspalte die Zeilennummer des Suchbegriffs per VERGLEICH() zu ermitteln und dann die Werte aus den Spalten per INDEX auszulesen. Dann wird die zeitaufwendige Suche nur 1x pro Zeile ausgeführt und nicht auch noch zusätzlich für jede Spalte.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige