ich habe grade ein kleines Praxisproblem und hoffe darauf, hier etwas Hilfe zu finden.
Es geht um folgendes Problem:
Ich habe einen Mandanten (Online Shop) für den wir die Buchführung als EXCEL-CSV einspielen und im nachhinein abstimmen. Bei der Abstimmung geht es darum, dass der Mandant mehrere Einzelbuchungen in einer Sammelbuchung zusammenfasst und diese dann umbucht.
Das Problem an der Sache ist, dass wir herausfinden müssen, welche Beträge in dieser einen summe enthalten sind.
Beispiel:
Sammelbuchung (Ergebnis aus x werten) 49.300,00
Einzelbuchungen (x sind in Summe enthalten) 12.521,58 201.675,11 ....... 4.625,25 = x 3.229,75 = x 6.245,70 = x 3.506,30 = x 7.884,65 = x 3.912,90 = x 6.939,70 = x 4.461,85 = x 3.918,85 = x 4.575,05 = x ...... 1.490,15 4.018,10
ich habe grade ein kleines Praxisproblem und hoffe darauf, hier etwas Hilfe zu finden.
Hallo,
bei so einer Aufgabenstellung stelle ich mir immer die Frage, wieso der schwierige Weg gegangen wird... Wenn euer Mandant die Buchungen zusammenfasst, kann er das natürlich gern machen. Er soll dann aber auch mit angeben, welche Buchungen das waren. Wenn er dies nicht angibt, bekommt er eine Nachricht, das die Buchungen nicht zugeordnet werden können, deshalb nicht verbucht werden können und dann Mahngebühren fällig werden. Aber wie so oft, wird dann der "Weg des geringsten Widerstandes" gewählt und lieber geraten, als das man den Mandanten "verprellt"...
Also mit dem Solver hast du doch schon eine sehr komfortabel Lösungsmöglichkeit... oder du nutzt die andere Möglichkeit...
Wie du aber bereits selbst erwähnt hast, wird immer der Weg des geringsten Wiederstands gewählt und vor allem wenn es sich bei dem Mandanten um einen der Größten handelt.
Ich wünschte ich könnte dem das 1 zu 1 sagen, aber leider sagt mir mein Chef "Es gibt Lösungen, finde Sie" :O
wenn Du eine Lösung mit Solver hast dann benötigst Du dafür einen Aufwand und selbiger fällt doch irgendwo mit Kosten ins Gewicht. Wenn diese Kosten so wie es sein sollte bei dem Mandanten landen könnte man ihm eine Änderung mit einer entsprechenden Kostensenkung schmackhaft machen. Wenn Eure Kalkulation das nicht berücksichtigt hat und die Kosten bei Euch hängen bleiben habt Ihr was falsch gemacht
Ansonsten geht das in Richtung alle möglichen Zahlenkombinationen herausfinden. Also, wenn Du z.B. 4 Rechnungen geschrieben und eine Zahlung erhalten hast dann könntest Du die Zahlenkombis 1-4 verwenden 1 1+2 1+3 1+4 1+2+3 1+2+4 1+3+4 1+4 2+3 2+4 ... usw
Die Zahlenkombis bereitest Du als Liste vor und verwendest sie immer wieder Dann holst Du anhand der Liste die jeweiligen Einzelbeträge und schaust, ob die Summe passt.
Die Frage wäre jedoch, was als Lösung in Frage kommt wenn es mehrere Treffer gibt. Dein Kunde könnte z.B. einen Betrag zahlen, der 1 oder 2+3 entspricht weil beides gleich ist. Später könnte ja eine weitere Zahlung erfolgen, die 3+4 entspricht. Falls Du Dich anfangs für 2+3 entschieden hast, müsstest Du die Buchung später ändern.
Könnte man sicher auch als Makro umsetzen. Für einen Großkunden / -auftrag solltet Ihr Euch sicher auch einen Programmierer leisten können
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
06.10.2024, 15:17 (Dieser Beitrag wurde zuletzt bearbeitet: 06.10.2024, 15:17 von Ego.)
Hallo Stephan,
dann viel Spass beim Raten.
In deinen Beispieldaten gibt es zwar genau eine Kombination die Sammelbuchung von 1.170,70 CHF aus den Einzelbuchungen zusammenzustellen, aber für die Sammelbuchung von 5.341,70 CHF gibt es schon 271 Kombinationen und für 31.241,70 CHF mehr als 19.000 (nach zwei Minuten abgebrochen).
ps. Das Video ist wohl ein Witz. Es gibt zwar für kleine Mengen von Einzelbuchungen schnell eine Lösung, sagt aber nicht ob es die einzig mögliche Kombination ist.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.