Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sumifs mit Bezug auf andere Tabelle

Forumthread: Sumifs mit Bezug auf andere Tabelle

Sumifs mit Bezug auf andere Tabelle
Nico
Hallo zusammen,
ich versuche gerade eine sumifs Funktion per VBA zu verarbeiten.
Folgende Syntax
Worksheets(ShWert).Cells(WZZ, WZS).Value = Application.WorksheetFunction.SumIfs(Workbooks(UDfile).Worksheets(ShWert).Range("F:F"), Workbooks(UDfile).Worksheets(ShWert).Range("I:I"), WZN, Workbooks(UDfile).Worksheets(ShWert).Range("G:G"), WZL)
Problem
Das ausgegeben Ergebnis ist 0
Vermutung
Ich denke, er mag die diesen Ausdruck nicht "Workbooks(UDfile).Worksheets(ShWert).Range("F:F")"
Hat jemand ne Idee.
Danke
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Sumifs mit Bezug auf andere Tabelle
16.04.2010 11:22:54
Ramses
Hallo
Wieviele Parameter übergibst du denn ?
SUMMEWENN hat drei Parameter
Suchbereich;Suchbegriff;Summenbereich
Du übergibst aber 5 und noch dazu in der falschen Reihenfolge
Gruss Rainer
Vergiss das...
16.04.2010 11:30:42
Ramses
Hallo
Lesen sollte man können. Es geht ja um das kleine "s" dazu
Muss mal schnell nachsehen
Gruss Rainer
Anzeige
AW: Vergiss das...
16.04.2010 11:40:48
Nico
:-) Genau, es ist die neue Summewenns Funktion, die es bei Excel 2007 gibt. Praktisch das Pendant zum alten Summenprodukt.
;
Anzeige
Anzeige

Infobox / Tutorial

Sumifs mit Bezug auf andere Tabelle in Excel


Schritt-für-Schritt-Anleitung

Um die Funktion SumIfs in VBA zu verwenden, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Füge ein neues Modul hinzu: Rechtsklicke im Projekt-Explorer auf dein Projekt, wähle Einfügen und dann Modul.

  3. Schreibe den Code: Nutze folgenden Beispielcode, um die SumIfs-Funktion zu implementieren:

    Sub SumIfsExample()
       Dim ShWert As String
       Dim UDfile As String
       Dim WZZ As Integer
       Dim WZS As Integer
       Dim WZN As Variant
       Dim WZL As Variant
    
       ' Setze Variablen
       ShWert = "Tabelle1"
       UDfile = "Daten.xlsx"
       WZZ = 1
       WZS = 2
       WZN = "Kriterium1"
       WZL = "Kriterium2"
    
       ' Berechne die Summe
       Worksheets(ShWert).Cells(WZZ, WZS).Value = Application.WorksheetFunction.SumIfs( _
           Workbooks(UDfile).Worksheets(ShWert).Range("F:F"), _
           Workbooks(UDfile).Worksheets(ShWert).Range("I:I"), WZN, _
           Workbooks(UDfile).Worksheets(ShWert).Range("G:G"), WZL)
    End Sub
  4. Führe das Makro aus: Drücke F5 im VBA-Editor, um das Makro auszuführen.


Häufige Fehler und Lösungen

  • Fehler: Ergebnis ist 0

    • Lösung: Überprüfe die Parameteranzahl. Stelle sicher, dass du die richtige Anzahl an Kriterien übergibst. SumIfs benötigt mindestens drei Parameter: den Suchbereich, den Suchbegriff und den Summenbereich.
  • Fehler: Falscher Bereich

    • Lösung: Achte darauf, dass die Bereiche, die du übergibst, die gleiche Anzahl an Zeilen haben. Wenn der Suchbereich und die Summe unterschiedliche Größen haben, wird ein Fehler auftreten.

Alternative Methoden

Wenn du die Funktion SumIfs nicht in VBA verwenden möchtest, kannst du die folgende Methode direkt in einer Excel-Zelle verwenden:

=SUMMEWENNS(F:F; I:I; WZN; G:G; WZL)

Diese Formel funktioniert ähnlich wie WorksheetFunction.SumIfs in VBA und ist direkt in einem Arbeitsblatt anwendbar.


Praktische Beispiele

Beispiel 1: Angenommen, du hast eine Verkaufsdatenbank und möchtest die Gesamtsumme der Verkäufe für einen bestimmten Verkäufer und ein bestimmtes Produkt berechnen.

Worksheets("Verkäufe").Cells(1, 2).Value = Application.WorksheetFunction.SumIfs( _
    Workbooks("Verkäufe.xlsx").Worksheets("Daten").Range("E:E"), _
    Workbooks("Verkäufe.xlsx").Worksheets("Daten").Range("A:A"), "Verkäufer1", _
    Workbooks("Verkäufe.xlsx").Worksheets("Daten").Range("B:B"), "Produkt1")

Beispiel 2: Wenn du mehrere Kriterien hast, kannst du diese auch in einer Zelle auswerten.

=SUMMEWENNS(E:E; A:A; "Verkäufer1"; B:B; "Produkt1"; C:C; ">100")

Tipps für Profis

  • Verwende benannte Bereiche: Wenn du häufig mit den gleichen Bereichen arbeitest, erwäge, diese als benannte Bereiche zu definieren. Das erhöht die Lesbarkeit deiner Formeln.
  • Debugging: Wenn dein Ergebnis nicht wie erwartet ist, füge Debugging-Informationen in dein VBA-Skript ein, um zu prüfen, welche Werte tatsächlich verarbeitet werden.

FAQ: Häufige Fragen

1. Frage
Wie viele Kriterien kann ich in der SumIfs-Funktion verwenden?
Antwort: Du kannst bis zu 127 Kriterien in der SumIfs-Funktion verwenden.

2. Frage
Kann ich SumIfs auch in einer Tabelle verwenden, die nicht im aktiven Workbook ist?
Antwort: Ja, du kannst SumIfs auf andere Arbeitsmappen anwenden, solange die entsprechende Syntax korrekt ist und die Arbeitsmappe geöffnet ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige