ich habe folgende Schwierigkeit die ich leider nicht selbst gelöst bekomme:
Ich arbeite mit zwei Arbeitsblättern (AB) in Excel 2010 wobei AB1 die Ergebnisse und AB2 die Basistabelle darstellt. Die Basistabelle besteht aus 33 Spalten und kann bis zu ca. 100.000 Zeilen enthalten.
Die Basistabelle hat immer die gleiche Struktur (Lieferantenname, Lieferantennummer, Bestelldatum, Bestellwert) lediglich der Inhalt variiert, weil neu geladen werden kann.
Nun möchte ich über das Summenprodukt in AB1 pro Lieferantennummer und Monat die Summen ermitteln und ein kleines immer gleiches Dashboard kreeieren
AB2. Spalte G = Lieferantennummer
AB2.Spalte B = Bestelldatum
AB2.Spalte X = Bestellwert
Im AB1 stehen die Suchbegriffe Lieferantennummer und Monat(als Zahl 1-12)
Hier mein Code:
Sub test()
Dim WS1, WS2 As Worksheet
Set WS1 = Worksheets("PO-Dashboard")
Set WS2 = Worksheets("PO-Data-Source")
Dim SumProdZeile, SumProdZeileEnde, SumProdSpalte As Integer
Dim x,z As Long
SumProdZeileEnde = 500 + lzNoDup - 1 ' lzNoDup = letzte Zeile ohne
Duplikate der Suchwerte, wird
vorher brechnet
'--------------Ergebniszellen in WS1 -------------------------Supplier-Nr.------------------ _
-------Monat----------------------------------Summe PO Daten--------------
'WS1.Cells(SumProdZeile, SumProdSpalte)=SUMMENPRODUKT((E11='PO-Data-Source'!G3:G50000)*(G8= _
MONAT('PO-Data-Source'!B3:B50000))*('PO-Data-Source'!X3:X50000))
For SumProdZeile = 500 To SumProdZeileEnde ' Zeilenschleife (Werte in "G")
For SumProdSpalte = 7 To 18 ' Spaltenschleife (Monate)
x = WS1.Cells(SumProdZeile, 5).Value
z = WS1.Cells(8, SumProdSpalte).Value
WS1.Cells(SumProdZeile, SumProdSpalte).Formula = Evaluate("=SUMPRODUCT((" & x & " = _
WS2.Range(WS2.Cells(3,7),WS2.Cells(lz,7)) * (" & z & " = MONTH(WS2.Range(WS2.Cells(3,2),WS2.Cells(lz,2))) * (WS2.Range(WS2.Cells(3,24),WS2.Cells(lz,24)))")
Next SumProdSpalte
Next SumProdZeile
End Sub
Fehlermeldung:Leider wird im Excel immer nur 0 angezeigt und meine Ergebnistabelle sieht leider so aus. Ergebnistabelle sieht leider so aus:
Monate
Lieferant L-Nummer 1 2 3 4 5
abc GmbH 1234567 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
bcd GmbH 2345678 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
cde GmbH 3456789 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
efg GmbH 4567890 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
fgh GmbH 5678901 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
ghi GmbH 6789012 #WERT! #WERT! #WERT! #WERT! #WERT! #WERT!
Frage:
Wie bekomme ich das geändert, so dass die Berechnung funktioniert?
Wie würde die Sumproduct Formel aussehen wenn noch mehr Suchbegriffe hinzukommen?