Hilfe bei "Wenn-Funktion" in Excel?
Hallo liebe User,
ich erstelle gerade eine automatisierende Buchhaltung in Excel. Ich möchte es so haben, dass wenn ich die Buchungssätze schreibe, dass Excel erkennt, dass "Bank" 200€+ bekommt. Das klappt auch im einzelnen. Allerdings ist es so, dass man öfters auf einem Konto bucht. Aber ab diesem Moment, wo ich mehrer Buchungssätze mit ein Konto habe, erkennt Excel nur ein. Hier einige Bilder zum Verstehen:
- Konto ist leer, es wurden noch keine Buchungssätze aufgeschrieben
. 2. Buchungssätze wurden aufgeschrieben
Nur der erste Buchungssatz wird akzeptiert.
Hier die Funktion für eine einzelne Buchung:
Hier die Funktion für mehrere Buchungen:
(Zu klein um es lesen zu können). Ich kopiere einfach diese Funktion 1:1 und wechsel nur die Zellennummern, anstatt B5 und E5 schreibe ich z. B. B9 und E9
Kann mir jemand helfen?
PS: Mir fällt erst jetzt ein, dass ab dem Moment, wo die erste Bedingung zustimmt, werden die andere nicht beachtet richtig? Wie könnte ich es dann machen?
Danke im voraus.
4 Antworten
Vorschlag (in 3 Tabellenblättern)
Buchungssätze
Formeln runterkopieren; Spalten A:BJ können danach (aus Gründen der Übersicht) ausgeblendet werden.
(Zeilen 9:50 sind ausgeblendet)
T-Konten
Zahl neben der Kontenbezeichnung ist die zugeordnete Nr. z.B. in Zelle A2:B2 usw.
lfd. Nr. ist die des jeweiligen Buchungssatzes
T-Konten (verfügbar und selbst zu benennen)



So richtig habe ich Deine Frage nicht verstanden.
- V1: Willst Du die Summer aller Buchungen in der grünen Tabelle haben, also alle Buchungen Soll bzw. haben in EINE Zeile in der Übersicht oder
- V2: Soll die Formel nur für jede Zeile den Betrag bei Soll oder Haben übernehmen?
Bei V2:
In grün, Zelle B2: =Wenn(…!B5="...";..."!E5;"")
in grün, Zelle D2: =Wenn(…!D5="...";..."!E5;"")
Markiere die Zellen von B2 bis D26 mit der Maus und Drücke >Strg< und >u<. Das kopiert die Formel 25 Zeilen nach unten.
V1: Das wäre dann eine Summewenn-Funktion in B2 und D2 (einfach mal ausprobieren) und anstelle des Verweises auf die einzelne Zelle musst Du den Bereich mit den Buchungen auswählen, also …!B5:B26 und …!E5:E26
War V2 die Frage?
Ansonsten musst Du einfach Dein Vorhaben genauer beschreiben.
Optional geht auch ein Excel-Forum, aber auch dort musst Du es etwas anders darstellen, da die Zielsetzung nicht ganz klar ist 😉
Kleiner Tipp aus der Praxis: vermeide unnötige Leerzeilen zwischen den Datensätzen, mache lieber die Zeilenöhe größer und richte den Text mittig aus (in der Höhe).
Also ich versuche neu zu erklären:
Ich möchte die Formel so aufstellen, dass wenn ich z. B. 20 Buchungssätze habe, dass ich nicht einzeln schauen muss ob Grundstück im Soll oder Haben ist, sondern dass jedes mal, wenn Grundstück in irgendein Buchungssatz dabei ist, soll es dann automatisch gebucht werden. Ich möchte nur die Buchungssätze aufschreiben, und Excel soll dann automatisch in den Konten buchen. Je nach dem ob soll oder haben.
Also fürs erste reicht meine V2. Im T-Konto werden die Buchungssätze richtig zugeordnet. Allerdings werden im T-Konto (grün) Leerzeilen auftauchen, wenn zwischen den Buchungssätzen für das Grundstück noch andere sind.
Diese Leerzeilen u verhindern ist ein wenig aufwändig. Da bräuchte ich noch ein wenig. Ist das wichtig?
Nein. Ich wäre schon dankbar wenn du es allgemein machen würdest. Trotzdem danke :)
aber auch hier gehen nur Buchungssätze für das Grundstück.
Das geht auch mit mehreren Konten als Buchungssatz, sie müssen halt nur angelegt werden.
Das ist schon klar - deswegen auch mein "hilfreich" 😀. Aber gestern Nacht erschien es mir so, dass die Formel "fremde" Buchungssätze als Leerzeilen auswirft. Nimm z.B. in Zeile 2, 4 oder 5 des FS einen Buchungssatz "Kasse an Bar" mit 1.000,- €. Dann wird im T-Konto diese Zeile als Leerzeile dargestellt.
Das stimmt, das lässt sich - mit etwas Aufwand - vermeiden indem für jede Buchungsart eine eigene Zählung der Soll-/Haben-Buchungen vorgenommen wird.
Machbar,
Vielleicht/sicher gibt es über VBA einfachere Lösungen.
VBA wäre einfach mit einer Schleife, ich tüftle gerade an einer reinen Excel-Lösung 😉, fällt Die spontan was dazu ein?
Ja, bin außer Haus, suche, probiere eine eine flexible, erweiterbare Lösung
Es geht sicher, dauert aber noch
Die Kollegen im Forum haben mir folgenden Link angeboten:
http://www.excelformeln.de/formeln.html?welcher=28
Allerdings bin ich der Meinung, dass er nur funktioniert, wenn man nicht das Ergebnis sondern die Adresse des Treffers nimmt und dann mit Indirekt in das T-Konto einbaut.
Habe eine Excel-Lösung gebastelt die funktioniert (zunächst bis 30 Konten) Erweiterungen sind relativ einfach zu ergänzen.
Habe die Datei aber erst morgen zur Verfügung, da ich sie mir nicht hierher schicken konnte (warum auch immer ?)
Siehe Antwort
Hilfreichste Antwort von KHSchindelar vor 3 Tagen
Vorschlag (in 3 Tabellenblättern)
Hast Du Fragen dazu ?
Moin,
ich habe nicht wirklich Ahnung von BWL, aber so etwas kannst du Über Summewenn lösen! Oder du verwendest Summewenns für mehrere Bedingungen bzw. Summewenn+Summewenn .... Danach muss du auch deine Tabelle aufbauen!
Wenn die Wörter nicht eindeutig festgelegt werden können, Codezahlen verwenden! z.B. 1111 für Soll und 9999 für Haben...Dann kann auch Summewenn ordentlich arbeiten. (Das Excel was ich benutze hat einen Rechenfehler bei Millionen Beträgen! Aufpassen, wenn du in diese Richtung kommst und das Wichtig ist. 33.333.333 ^2 Mit dem Windows-Rechner und mit Excel probieren!)
Grüße
Danke für deine Antwort. Ich muss gestehen, ich kannte Summewenn nicht. Werde ich aufjeden fall ausprobieren.
PS: Wenn du willst schicke ich dir meine Excel Datei, wenn es für dich in Ordnung ist?
Summewenn ist eine Summenformel und rechnet alle Werte zusammen, die eine Bedingung enthalten z.B. (Gesamt)summe wenn z.B. Spalte X Bankguthaben enthält und z.B. in Spalte Y die einzelnen Beträge enthalten sind.
Vielleicht hilft Dir das ...
Zum Kopieren der Formeln.
Das ist die Grundformel, ...
C30 =WENN(SUMMEWENNS($E$3:$E25;$B$3:$B25;$C$28;$A$3:$A25;$A30)=0;"";SUMMEWENNS($E$3:$E25;$B$3:$B25;$C$28;$A$3:$A25;$A30))
E30
=WENN(SUMMEWENNS($E$3:$E25;$D$3:$D25;$C$28;$A$3:$A25;$A30)=0;"";SUMMEWENNS($E$3:$E25;$D$3:$D25;$C$28;$A$3:$A25;$A30))
... die einfach runter zukopieren sind.
Die Bezüge müsstest Du an Deine Tabelle anpassen.

Na den Stern hast Du Dir redlich verdient.
Ich musste zeitlich leider passen; sitze an einem VBA-Tool für die Kollegen der Bauleitung (ein Excel-GAU neben dem anderen, aber alle sehr nett) 😉😅