Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: SUMMEWENNS im Array möglich?

SUMMEWENNS im Array möglich?
27.02.2018 10:19:25
Lutz
Hallo,
ich muß sehr viele Daten verarbeiten und bin daher auf der Suche nach "schnelleren" Bearbeitungsmöglichkeiten.
Da ich noch nie mit Array gearbeitet habe, dies aber schneller gehen soll, hier meine Frage:
Normalerweise suche ich einen Wert mit der SUMMEWENNS Formel- also z.B.:
=SUMMEWENNS(basisdaten!A:A;O2)
Der Bereich ist also in Tabelle "basisdaten" die gesamte Spalte A
und das Suchkriterium findet sich in der aktuellen Tabelle in Zelle O2.
Wie könnte ich nun das ganze über eine Array lösen?
Wenn ich z.B. die Basisdaten in Tabelle "basisdaten" in ein Array einlese,
wie kann ich dann die Funktion SUMMEWENNS verwenden?
Danke und Gruß
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Da bekommst Du was durcheinander
27.02.2018 10:52:36
lupo1
Wenn es schneller gehen soll, könnte man
a) Pivot
b) eine Eingrenzung von A:A auf den tatsächlichen Bereich (falls die Excel-Version das nicht von selbst erkennt)
empfehlen. Ich gehe im Falle b) wie folgt vor: Ich fange immer oben an. Also
1) mit X1: =ANZAHL2($A:$A)
2) benenne ich die Formel =$A$1:INDEX($A:$A;$X$1) mit a und verwende dann
3) =SUMMEWENNS(a;O2)
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

SUMMEWENNS im Array effektiv nutzen


Schritt-für-Schritt-Anleitung

Um die SUMMEWENNS-Funktion mit einem Array zu verwenden, kannst Du die folgenden Schritte befolgen:

  1. Daten einlesen: Lade die Daten aus der Tabelle "basisdaten" in ein Array.

    Dim basisdatenArray As Variant
    basisdatenArray = Worksheets("basisdaten").Range("A1:A1000").Value ' Passe den Bereich an
  2. SUMMEWENNS im Array: Verwende die SUMMEWENNS-Funktion in Kombination mit dem Array.

    Dim ergebnis As Double
    ergebnis = Application.WorksheetFunction.SumIfs(basisdatenArray, Worksheets("AktuelleTabelle").Range("O2").Value)
  3. Ergebnis ausgeben: Setze das Ergebnis in die Zelle, wo Du es benötigst.

    Worksheets("AktuelleTabelle").Range("P2").Value = ergebnis ' Beispiel, wo das Ergebnis ausgegeben wird

Häufige Fehler und Lösungen

  • Fehler: #WERT! oder #NAME?

    • Lösung: Überprüfe, ob die Array-Daten korrekt eingelesen wurden und dass Du die richtigen Bereiche in Deiner Funktion verwendest.
  • Fehler: Falsche Ergebnisse

    • Lösung: Stelle sicher, dass die Kriterien in der SUMMEWENNS-Formel korrekt sind und dass die Daten im Array entsprechend gefiltert werden.

Alternative Methoden

  • Pivot-Tabellen: Wenn Du große Datenmengen verarbeiten möchtest, sind Pivot-Tabellen eine empfehlenswerte Alternative. Sie bieten eine leistungsfähige Möglichkeit, Daten zu summieren und zu analysieren.

  • Direkte Bereichsangabe: Anstatt die gesamte Spalte A zu verwenden, kannst Du die Daten auf den tatsächlich genutzten Bereich eingrenzen, was die Berechnungszeit verkürzen kann.


Praktische Beispiele

Beispiel 1: Verwendung von SUMMEWENNS mit einem Array

Dim datenArray As Variant
datenArray = Worksheets("basisdaten").Range("A1:A10").Value ' Werte einlesen
Dim gesamt As Double
gesamt = Application.WorksheetFunction.SumIfs(datenArray, "Kriterium")

Beispiel 2: Pivot-Tabelle zur Analyse

  1. Wähle Deine Daten aus.
  2. Gehe zu "Einfügen" > "PivotTable".
  3. Wähle die Felder aus, die Du summieren oder analysieren möchtest.

Tipps für Profis

  • Verwende dynamische Bereiche: Mit der Funktion INDEX kannst Du dynamische Bereiche erstellen, die sich automatisch an Deine Daten anpassen.

  • Kombiniere Funktionen: Nutze die Möglichkeit, SUMMEWENNS mit anderen Excel-Funktionen zu kombinieren, um komplexere Berechnungen durchzuführen.


FAQ: Häufige Fragen

1. Kann ich SUMMEWENNS in einer Formel mit einer Array-Berechnung kombinieren?
Ja, Du kannst SUMMEWENNS in Kombination mit Arrays verwenden, um die Leistung zu verbessern, insbesondere bei großen Datenmengen.

2. Was ist der Vorteil der Verwendung von Arrays in Excel?
Arrays ermöglichen eine schnellere Verarbeitung von Daten und können die Leistung bei großen Berechnungen erheblich steigern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige