Hallo Byörn,
wenn ich dich richtig verstehe, beginnt dein zu summierender Bereich bei Sheet 5 (z.B. Kunde A) und geht bis inkl. zum letzten Sheet. Dafür kannst du in der Bestellliste die folgende Formel verwenden: =SummeWennAb(KundeA!B:B;A3;KundeA!E:E). Wichtig ist dabei, dass Bereich und Summe_Bereich auf dem gleichen Blatt liegen.
Den Code für diese Formel musst du natürlich erst noch in einem allgemeinen Modul hinterlegen:
Function SummeWennAb(Bereich As Range, Suchkriterien, Summe_Bereich As Range)
Dim l As Long, u As Long, i As Long, s As Double, Mappe As Workbook
Application.Volatile
Set Mappe = Bereich.Parent.Parent
l = Bereich.Parent.Index: u = Summe_Bereich.Parent.Index
If l > u Then i = u: u = l: l = i
If l = u Then u = Mappe.Sheets.Count
If Mappe.Name <> Summe_Bereich.Parent.Parent.Name Then SummeWennAb = "#Mappe!": Exit Function
For i = l To u
s = s + Application.WorksheetFunction.SumIf(Mappe.Sheets(i).Range(Bereich.Address), _
Suchkriterien, Mappe.Sheets(i).Range(Summe_Bereich.Address))
Next i
SummeWennAb = s
End Function
Die Formel ist exakt so aufgebaut wie eine normale SummewennFormel. nur dass nicht nur das angegebene Blatt, sondern alle Blätter bis zum letzten Blatt gerechnet werden.
Tipp: Wenn du doch mal nur von Kunde A bis Kunde C rechnen willst, dann gib in der Formel zwei verschiedene Blattnamen an. z.B. =SummeWennAb(KundeA!B:B;A3;KundeC!E:E)
Gruß Mr. K.
PS: Du solltest im Herber Forum auch einen Link hierher setzen, damit man dort auch Bescheid weiß. Coachyous Formellösung ist zwar auch genial, führt bei mir aber zu einem falschen Ergebnis, wenn der gleiche Artikel pro Blatt mehrmals vorkommt.
|