Hat jemand eine Idee, wie man folgenden Fall lösen kann?
Ich suche eine Zahl (1.100,00€), in einer Spalte, die sich aus verschiedenen Werten zusammensetzt.
Gesucht:
1.100,00€ (Die Zahl ergibt sich aus den grünen Werten.)
Spalte:
1.000,00€
10.000,00€
100,00€
10,00€
Moin, gelöscht, weil offenbar Ziel weit verfehlt..
Hi
Tabelle1 | A | B | C | D | E |
1 | Einzelbeträge | Suchbetrag | | Einzelposten | Anzahl |
2 | 1000 | 2160 | | 1000 | 2 |
3 | 10000 | | | 100 | 1 |
4 | 10 | | | 10 | 6 |
5 | 100 | | | 0 | 0 |
6 | | | | 0 | 0 |
7 | | | | 0 | 0 |
8 | | | | 0 | 0 |
9 | | | | 0 | 0 |
10 | | | | 0 | 0 |
Formeln der Tabelle |
Zelle | Formel | D2 | {=MAX((A$2:A$35<=B2)*A$2:A$35)} | E2 | =GANZZAHL(B$2/D2) | D3 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D2)*(E$2:E2));5))*A$2:A$35)} | E3 | {=WENN(D3=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D2)*(E$2:E2)));5)/D3))} | D4 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D3)*(E$2:E3));5))*A$2:A$35)} | E4 | {=WENN(D4=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D3)*(E$2:E3)));5)/D4))} | D5 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D4)*(E$2:E4));5))*A$2:A$35)} | E5 | {=WENN(D5=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D4)*(E$2:E4)));5)/D5))} | D6 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D5)*(E$2:E5));5))*A$2:A$35)} | E6 | {=WENN(D6=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D5)*(E$2:E5)));5)/D6))} | D7 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D6)*(E$2:E6));5))*A$2:A$35)} | E7 | {=WENN(D7=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D6)*(E$2:E6)));5)/D7))} | D8 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D7)*(E$2:E7));5))*A$2:A$35)} | E8 | {=WENN(D8=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D7)*(E$2:E7)));5)/D8))} | D9 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D8)*(E$2:E8));5))*A$2:A$35)} | E9 | {=WENN(D9=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D8)*(E$2:E8)));5)/D9))} | D10 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D9)*(E$2:E9));5))*A$2:A$35)} | E10 | {=WENN(D10=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D9)*(E$2:E9)));5)/D10))} |
|
Enthält Matrixformel: Umrandende { } nicht miteingeben, sondern Formel mit STRG+SHIFT+RETURN abschließen! |
Tabelle1 | A | B | C | D | E |
1 | Einzelbeträge | Suchbetrag | | Einzelposten | Anzahl |
2 | 1000 | 2160 | | 1000 | 2 |
3 | 10000 | | | 100 | 1 |
Formeln der Tabelle |
Zelle | Formel | D2 | {=MAX((A$2:A$35<=B2)*A$2:A$35)} | E2 | =GANZZAHL(B$2/D2) | D3 | {=MAX((A$2:A$35<=RUNDEN(B$2-SUMME((D$2:D2)*(E$2:E2));5))*A$2:A$35)} | E3 | {=WENN(D3=0;0;GANZZAHL(RUNDEN((B$2-SUMME(($D$2:$D2)*(E$2:E2)));5)/D3))} |
|
Enthält Matrixformel: Umrandende { } nicht miteingeben, sondern Formel mit STRG+SHIFT+RETURN abschließen! |
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
abgekupfert bei:
http://www.herber.de/excelformeln und bitte suchen .../formeln.html?welcher=338
Im Übrigen lässt eine Anrede sowie ein Gruß ein Posting viel freundlicher erscheinen.
@WillWissen
Der Lösungsansatz ging komplett an meinem Anliegen vorbei.
Hola,
dann beschreib dein Anliegen mal etwas genauer bitte.
Gruß,
steve1da
Hi,
eine freundliche Anrede oder ein Hallo machen Deine Beiträge um einiges sympathischer und steigert auch die Lust der Helfer, sich Deiner Frage anzunehmen.
Was ist denn Dein Wunschergebnis, wenn Deine Tabelle so aussieht:
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B |
1 | 1.000,00 € | ! ! ! ! ! |
2 | 10.000,00 € | |
3 | 100,00 € | ! ! ! ! ! |
4 | 10,00 € | |
5 | 900,00 € | ????? |
6 | 200,00 € | ????? |
Hallo,
das wird schwer bis nicht möglich.
Kommt auch entscheidend darauf an, wieviele Datensätze vorhanden sind.
Außerdem wird nicht immer eine Eindeutige Zuordnung möglich sein.
Unten ein Code, der bis zu 25 Summanden abarbeitet. Kannst aber einen Kaffe holen gehen, während er arbeitet.
Folgendes ist gegeben.
Deine Zahlen Max 25 (sonst bricht der Code ab) stehen in den Zellen A1:A25
In C1 steht die gesuchte Summe.
Ausgabe der Zahlen, die zu dieser Summe führen in Spalte B
Code:
Option Explicit
Sub summen_kombis()
Dim lngAnzahl As Long, ar As Variant, i As Long, j As Long, dblVal As Double, dblSum As Double
Dim k As Long
lngAnzahl = Range("A1").End(xlDown).Row
If lngAnzahl > 25 Then Exit Sub
dblVal = Range("C1")
ar = WorksheetFunction.Transpose(Range("A1").Resize(lngAnzahl))
For i = 0 To 2 ^ lngAnzahl - 1
dblSum = 0
For j = 0 To lngAnzahl - 1
If i And 2 ^ j Then dblSum = dblSum + ar(j + 1)
Next
If dblSum - dblVal = 0 Then
For j = 0 To lngAnzahl - 1
If i And 2 ^ j Then
If Application.CountIf(Range("B1:B" & k + 1), ar(j + 1)) = 0 Then
Cells(k + 1, 2) = ar(j + 1)
k = k + 1
End If
End If
Next
End If
Next
End Sub
Code von bst aus dem
MS-Office-Forum von mir erweitert
Um die Zahlen in Spalte A zu markieren, setzt Du folgende Formel ein:
=ZÄHLENWENN(B:B;A1)
Hallo zusammen,
mir geht es darum einen feststehenden Betrag (z. B. 1100€) aus einer Spalte herauszufinden.
Der Haken an dieser Sache ist, dass sich der Betrag aus mind. 2 Beträgen der Spalte zusammensetzt.
Jetzt sind dort nicht viele Daten angegeben und ich wäre froh, wenn das möglich wäre.
Ich hätte am liebsten, dass er den Wert aus 100 oder 1000 Zeilen einer Spalte findet.
Gruß
FC1911
heje excelfreunde, FC1911,
FC1911, anhand welcher mermale unterscheiden sich deine zahlen.... bzw. anhand welcher merkmale ist zu erkennen, welche zahlen zusammengefasst werden sollen und welche nicht...
Hallo FC1911,
mal die Frage zur Zusammenstellung anders formuliert - was soll raus kommen, wenn es mehr als eine Möglichkeit zur Lösung gibt? Im Moment gehen die Antworten von dem Ansatz aus, dass Du eine zahl vorgibst und in Deiner Liste sollen passende Summanden gesucht werden.
Da geht der Ansatz von WillWissen auch nicht an Deiner Frage vorbei. Trage dort mal die 1100 ein und Du wirst sehen, es stimmt.
Eine andere Auffassung Deiner Frage wäre eine Addition nach Farben. Willst Du eventuell alle grünen Zahlen addieren? Dann brauchst Du einen anderen Lösungsansatz.