Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Edgar,
mein Hinweis zielte darauf, wenn Du es per Formel löst, dass das dann in Abhängigkeit der Anzahl der Blöcke entsprechend oft wiederholt werden muss. Bei 30 Blöcken würde Deine Formel 30 mal benötigt, oder sehe ich da was falsch? Daher finde ich den VA-Ansatz nicht verkehrt.
Deine Formel würde ich dann vielleicht schon über den einzelnen Blöcken anordnen und bei der Zusammenfassung dann die "Quersumme" oder besser gesagt die Summe quer über die Zeile 1 bilden...
Mit der gefragten Summe kann in so fern stimmen, dass in dem Projekt später mehrere Kombinationen gesucht und die Ergebnisse dann eben summiert werden sollen. Dann würde aber der Gedanke mit den Formeln über den Blöcken nicht so (einfach) gehen, man müsste die verschiedenen Abfragen einbauen oder eben n Zeilen verwenden, für jede Abfrage eine. Bei der VBA-Lösung müsste man die Bereiche mit den Abfragebedingungen flexibel gestalten.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 13.04.2014
Version(en): 365
Hallo Andre,
die Formel wird nur einmal benötigt, über alle Blöcke, egal wieviele es sind!
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Edgar,
ich habe das leider nicht verstanden, wie Deine Formeln die Ausgangsfrage betreffend eingesetzt werden sollen.
Gruß Uwe
Registriert seit: 13.04.2014
Version(en): 365
19.02.2015, 09:17
(Dieser Beitrag wurde zuletzt bearbeitet: 19.02.2015, 09:21 von BoskoBiati.)
Hallo Uwe,
die Eingangsfrage ist mir nicht ganz klar. Entweder wird über Typ und Art die Summe aus Anzahl gesucht, oder man sucht die Anzahl Eintragungen, bei denen alle drei Werte passen. Beides geht über die Summenproduktformel. Letzteres ginge auch über ZÄHLENWENNS (countifs)!
Bei Ersterem wäre die Frage, das habe ich noch nicht getestet, ob es mit SUMMEWENNS geht.
Nachtrag:
Geht auch mit SUMMEWENNS:
Code:
=SUMMEWENNS(Tabelle2!C2:R31;Tabelle2!A2:P31;Tabelle1!G1;Tabelle2!B2:Q31;Tabelle1!G2)
Dann wäre ein Einzeiler in VBA machbar.
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Edgar,
es soll die Position einer Kombination von Typ und Art ermittelt und der Wert in der jeweils zugehörigen Zelle um den bei Anzahl stehenden Wert erhöht werden.
Gruß Uwe
Registriert seit: 13.04.2014
Version(en): 365
Hallo Uwe,
dann ist die Sache natürlich mit Formeln nicht mehr lösbar. Das ist bei mir so nicht angekommen.
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
19.02.2015, 18:18
(Dieser Beitrag wurde zuletzt bearbeitet: 19.02.2015, 18:39 von schauan.)
... Ich dachte auch, dass da noch ein paar Eingabefelder kommen und die dann zusammen gezählt werden. In meinem code muss zum Zelleintrag dann noch der bisherige Wert addiert werden.
Letztendlich weiß man sonst recht schnell nicht mehr, was man schon alles gerechnet hat...
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 01.11.2014
Version(en): 2007, 2010
Hallo zusammen,
ich glaube Ursprung für diesen Thread ist
dieser Eingangsthread.
Gruß
Max
Registriert seit: 01.11.2014
Version(en): 2007, 2010
Hallo zusammen,
es ist zwar nicht mehr aktuell, aber das wäre meine Lösung für das Problem.
Code:
Sub Summieren()
Dim i As Long
Dim s As Long
Dim Treffer As Range
Dim strBegriff As String
With Tabelle2
strBegriff = Tabelle1.Range("G1").Value
For s = 1 To 15 Step 3
For i = 1 To WorksheetFunction.CountIf(.Columns(s), strBegriff)
Set Treffer = .Cells(i, s)
Set Treffer = .Columns(s).Find(What:=strBegriff, After:=Treffer, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=False)
If Not Treffer Is Nothing And Treffer.Offset(0, 1) = Tabelle1.Range("G2").Value Then
Treffer.Offset(0, 2).Value = Treffer.Offset(0, 2).Value + Tabelle1.Range("G3").Value
End If
Next i
Next s
End With
End Sub
Gruß
Max