1. Home
  2. »
  3. Alle Beiträge
  4. »
  5. Automatisierte Bestandsbewertung in Excel: Die…

Automatisierte Bestandsbewertung in Excel: Die Verbrauchsfolgeverfahren FIFO und LIFO

Geht es im Rechnungswesen, im Controlling oder bei der integrierten Finanzplanung um die Bewertung von Vorratsvermögen unter Berücksichtigung eines der zulässigen Verbrauchsfolgeverfahren, stellt dies viele Akteure, trotz guter Excel–Kenntnisse, immer wieder vor Herausforderungen. Dieser Beitrag erläutert am Beispiel des FIFO–Verfahrens einen VBA–freien Ansatz, mit dem sich derartige Bestandsbewertungen in Excel einfach modellieren lassen.

Hintergrund Verbrauchsfolgeverfahren

Da der Hauptfokus dieses Beitrages auf der Excel-technischen Modellierung liegen soll, hier nur einige kurze Erläuterungen zum betriebswirtschaftlichen Hintergrund.

Verbrauchsfolgeverfahren dienen im Rechnungswesen und im Steuerrecht zur einfachen Ermittlung von Anschaffungs- und Herstellungskosten gleichartiger Vermögensgegenstände des Umlaufvermögens, wobei jeweils eine bestimmte Reihenfolge unterstellt wird, in der diese Vorräte gelagert bzw. verbraucht oder verkauft werden.

Insbesondere bei stark schwankenden Marktpreisen (auf Einkaufs- und Verkaufsseite) können im Rahmen der sog. Bewertungsvereinfachungsverfahren für gleichartige Gegenstände des Vorratsvermögens fiktive Annahmen gemacht werden, in welcher Reihenfolge die Gegenstände verbraucht bzw. veräußert werden (= Verbrauchsfolgefiktion).

Während bei der FIFO-Methode unterstellt wird, dass die zuerst angeschafften oder hergestellten Vermögensgegenstände zuerst verbraucht oder veräußert worden sind (First In – First Out), unterstellt die LIFO-Methode, dass die zuletzt angeschafften oder hergestellten Vermögensgegenstände des hingewiesen (vgl. § 253 Abs. 3 bis 5 HGB). Der in der Bilanz zu erfassende Buchwert der Lagerbestände kann
bzw. muss in diesen Fällen ggf. geringer ausfallen als mittels der Bewertungsvereinfachungsverfahren ermittelt. Vorratsvermögens zuerst verbraucht oder veräußert werden (Last In – First Out). Je nach verwendetem Verfahren ergeben sich unterschiedliche wertmäßige Endbestände und auch verschiedene Werte für die Kosten der verkauften Waren (Herstellungskosten bzw. COGS = costs of goods sold).

Bei der Anwendung der Bewertungsvereinfachungsverfahren kann darüber hinaus noch unterschieden werden zwischen periodischer und permanenter mengen- und wertmäßiger Erfassung der Zu- und Abgänge.

Während das (einfachere) periodische Verfahren nur am Periodenende zur Bewertung des Endbestands angewendet wird (unterjährige Abgänge werden nicht bewertet), wird beim permanenten Verfahren jeder Abgang individuell bewertet. Auf diese Weise erhält man unterjährig erheblich bessere Informationen bzgl. der jeweils aktuellen Bestandsbewertung bzw. bzgl. des zutreffenden Aufwands.

Seit der Änderung des Bilanzmodernisierungsgesetzes (BilMoG) sind nach § 256 HGB nur noch das LIFO- und FIFO-Verfahren handelsrechtlich zulässig. Der Vollständigkeit halber sei nochmals auf das Niederstwertprinzip hingewiesen (vgl. § 253 Abs. 3 bis 5 HGB). Der in der Bilanz zu erfassende Buchwert der Lagerbestände kann bzw. muss in diesen Fällen ggf. geringer ausfallen als mittels der Bewertungsvereinfachungsverfahren ermittelt.

Mythen und Realität bezüglich der Modellierung in Excel

Nutzt man seine favorisierte Suchmaschine, um Lösungsansätze zur Berechnung der genannten Verbrauchsfolgeverfahren mittels Excel zu finden, so stößt man u. a. auf undurchsichtige benutzerdefinierte Funktionen (sog. User Defined Functions (UDFs)), umfangreiche Rasterberechnungen ähnlich denen für
Abschreibungen oder speziell entwickelte VBA-Makros. Erst kürzlich ist mir ein weiterer, relativ komplexer Ansatz mittels einer geschachtelten Lambda-Funktion (neu ab Excel 365) untergekommen.

Vielfach wird von den Autoren einfach behauptet, dass nur unter Verwendung der genannten Techniken eine
Kalkulation umsetzbar sei, weil eine automatisierte Berechnung mittels „normaler“ Formeln in Excel nicht möglich wäre. Das die Realität anders aussieht, möchte ich ihnen im folgenden Beispiel zeigen.

Dabei zeigt der vorgestellte Modellierungsansatz exemplarisch für die FIFO-Methode, dass sehr wohl eine automatisierte Berechnung in Excel mittels klassischer Formeln möglich ist. Die Berechnung erfolgt dabei sogar auf permanenter Basis, berücksichtigt also jeden Zu- bzw. Abgang individuell

Die Ausgangslage

In unserem fiktiven Beispiel soll es um den Kauf und Verkauf von Mikroprozessoren eines bestimmten Typs
gehen. Sowohl die Einkaufs- wie auch die Verkaufspreise schwanken unterjährig und sind jeden Monat
unterschiedlich. Die zugehörige Excel-Datei können Sie am Ende dieses Beitrags kostenlos anfordern. Sie hilft
ggf. beim Nachvollziehen der hier erläuterten Formeln.

Abb.1

Ein Hinweis in eigener Sache: Wir erstellen sämtliche Excel-Modelle/-Berechnungen unter Anwendung von etablierten Financial Modelling Standards (vgl. z.B. www.fast-standard.org). Aus
diesem Grunde arbeiten wir horizontal. Dadurch können die Formeln einfach nach rechts durchkopiert und der Zeithorizont mit wenigen Klicks beliebig verlängert werden. Alle Eingabezellen sind einheitlich und klar formatiert (Einheiten für jede Zeile angegeben). Außerdem werden negative Zahlen gem. internationaler Standards in Klammern (nicht mit Minuszeichen) dargestellt. In Spalte G finden sich, wo sinnvoll, sog. Zeilensummen. Es kann nicht oft genug betont werden, dass die Verwendung solcher Standards für eine hohe Flexibilität, Nachvollziehbarkeit und einfache Bedienbarkeit von Finanzmodellen (auch durch
externe Dritte) sorgt.

Wie in Abb. 1 zu sehen, nutze ich für das Beispiel eine monatliche Periodizität. Für die hier erläuterten Formeln spielt das aber keine Rolle, theoretisch können die Berechnungen auch auf Tagesbasis (z.B. bei Aktientransaktionen) oder auch quartalsweise erfolgen. Im oberen Teil benötigen wir zunächst unsere Annahmen für die Käufe bzw. Verkäufe. Dabei sind jeweils die Stückzahl sowie die zugehörigen Preise anzugeben. Daraus kann dann zunächst der Lagerbestand zu jeder Periode (Anzahl Mikroprozessoren) ermittelt werden. Der jeweilige Bestand ergibt sich als Differenz der kumulierten Käufe und der kumulierten Verkäufe. Da wir nicht mehr verkaufen können, als auf Lager liegt, ergänzen wir eine Kontrollzeile die immer dann eine Fehlermeldung ausgibt, wenn der Bestand in einer Periode negativ werden sollte.

Exkurs Fehlerkontrolle: Die Kontrollzellen enthalten entweder eine „0“ wenn alles in Ordnung ist,
oder eine „1“, wenn eine bestimmte Bedingung nicht erfüllt ist (hier größer oder gleich 0). Dies
realisieren über eine einfache WENN-Funktion wie bspw. =WENN(Ihre_Bedingung_falsch;1;0),
also z.B. in Zelle I20 =WENN(I18<0;1;0). Damit die Zelle optisch gut sichtbar wird, definieren Sie
eine auffällige bedingte Formatierung für den Fall, dass der Zellwert ungleich „0“ ist (z.B. Rotfärbung)
und nutzen ein benutzerdefiniertes Zahlenformat, damit nicht 0 oder 1, sondern aussagekräftige
Informationen angezeigt werden (z.B. „OK“ und „Fehler“).

Schließlich können wir das zugehörige Bilanzkonto für die Vorräte (diesmal wertmäßig in Euro) entwickeln. Die Eröffnungsbilanz entspricht immer der Schlussbilanz der Vorperiode. Die Schlussbilanz einer Periode ergibt
sich aus der Eröffnungsbilanz und den Änderungen innerhalb der betrachteten Periode. D.h. alle Käufe werden addiert, alle Verkäufe subtrahiert (bzw. da negativ ausgewiesen ebenfalls addiert). Außerdem muss die Bestandsbewertung als 3. Komponente etwaige Gewinne die sich aus Preisänderungen ergeben positiv,
etwaige Verluste negativ berücksichtigen (Hinweis: Im vorliegenden Fall ist es daher sinnvoll, auch in den Monaten Verkaufspreise in Zeile 13 einzutragen, wenn weder Käufe noch Verkäufe stattfinden, weil ansonsten der komplette Bestand auf Null abgewertet wird.)

Die Berechnungsformeln dazu sind relativ trivial. Kauf- bzw. Verkaufswerte ergeben sich jeweils als Produkt aus den zugehörigen Annahmen für Mengen und Preise. Ein Gewinn bzw. Verlust wird ermittelt, in dem zunächst der Anfangsbestand (Stücke) mit dem jeweiligen Verkaufspreis bewertet wird und davon dann der
Eröffnungsbilanzwert sowie die Käufe der Periode abgezogen werden (Bsp. in K25: =(K12+K18)*K$13-SUMME(K$23:K$24))

Sofern alle Mikroprozessoren verkauft sind (z.B. im November), muss der Schlussbilanzwert natürlich wieder null sein, so dass wir hier auch eine Art Kontrolle haben.

Wir haben nun also bereits (in Zeile 24) die Informationen, was die Käufe der jeweiligen Periode kosten (=Materialkosten) und auch die Umsatzerlöse aus den Verkäufen (Zeile 26, natürlich mit pos. Vorzeichen).

Damit haben wir eine gute Basis, die spannende Frage aber lautet: Wie hoch sind die Kosten der verkauften Mikroprozessoren (= COGS) auf FIFO-Basis?

Das Problem „zu Fuß“ gelöst

  • Der erste Verkauf im Februar gestaltet sich noch relativ einfach. Da dieser komplett aus der im Januar
    für 20 EUR/Stück eingekauften Charge bestritten werden kann, also insgesamt 100 Stücke x 20 EUR = 2.000 EUR.
  • Beim zweiten Verkauf im April wird es schon komplizierter. Wir haben ja noch 100 Stücke zu 20 EUR aus dem ersten Kauf auf Lager und müssen weitere 50 Stücke aus dem zweiten Kauf berücksichtigen, also: 100 x 20 EUR + 50 x 25 EUR = 3.250 EUR (bzw. 21,67 pro Stück).
  • Analog gilt für den 3. Verkauf im Juni: 50 x 25 EUR (aus Kauf 2) + 20 x 30 EUR (aus Kauf 3) = 1.850 EUR (bzw. 26,43 pro Stück)
  • Für den vierten und letzten Verkauf im November gilt: 30 x 30 EUR (aus Kauf 3) + 100 x 20 EUR (aus Kauf 4) + 200 x 25 EUR (aus Kauf 5) = 7.900 EUR (bzw. 23,94 pro Stück).

 

Hat man das Konzept einmal nachvollzogen, ist die Berechnung auch für Nicht-Betriebswirte einfach
nachvollziehbar. Dass die Werte korrekt sind, zeigt schnell eine Summierung aller 4 Verkäufe. Die Summe i.H.v. 15.000 EUR entspricht genau der Summe aller Käufe im Bilanzkonto (Zelle G24 in Abb. 1).

Wie aber lässt sich diese Berechnungslogik modellieren bzw. automatisieren?
Mit Hilfe von nur 3 Zeilen lassen sich alle Werte (ohne VBA, UDFs etc.) automatisch berechnen. Wie das in der Excel-Datei aussieht, zeigt Abb. 2 (rote Markierung).

Abb.2

Schritt 1:

Analog wird für den dritten Verkauf Periode 5 (Mai 22) zurückgegeben. Auch hier müssen teilweise Stücke aus dem letzten Kauf davor (Kauf 3) verwendet werden. Zunächst ermitteln wir (in Zeile 31) die Periode (hier also den Monat), für den wir Käufe berücksichtigen müssen, um die gewünschte Anzahl an Mikroprozessoren verkaufen zu können. Für den ersten Verkauf ist das einfach Periode 1 (Jan 22), weil nur 100 der 200 dort erworbenen Mikroprozessoren benötigt werden.

Beim zweiten Verkauf wird Periode 3 (Mär 22) zurückgegeben. Dies liegt daran, dass die noch verbleibenden Mikroprozessoren aus Kauf 1 nicht ausreichen und teilweise auch Stücke aus Kauf 2 verwendet werden müssen.

Der letzte Verkauf ergibt Periode 10, da ja alle Prozessoren verkauft werden, somit auch die aus dem letzten Kauf im Oktober 2022. Alle anderen Perioden weisen Nullwerte („-„) aus, da ja keine Verkäufe getätigt werden.

Wir finden die erste Periode, in der die kumulierten Käufe (Zeile 16) größer oder mindestens gleich der Verkaufsmenge ist über die Formel in Zelle I31:

=VERGLEICH(WAHR;$I16:I16>=I$17;0)

Diese Formel können wir nach rechts durchkopieren, müssen aber vorher bei $I16 durch Einfügen eines $-Zeichens aus dem Spaltenbuchstaben einen absoluten Bezug machen.

Das dritte Argument der VERGLEICH-Funktion muss hier 0 lauten, sodass Excel den ersten Wert, der mit dem Wert für das Suchkriterium genau übereinstimmt, zurückgibt.

Bspw. funktioniert in Zelle N31 die Formel =VERGLEICH(WAHR;$I16:N16>=N$17;0) dann folgendermaßen:
{I16>=N$17, J16>=N$17, K16>=N$17, L16>=N$17, M16>=N$17, N16>=N$17}
bzw.
={FALSCH, FALSCH, FALSCH, FALSCH, WAHR, WAHR}

Das erste Mal ist die Bedingung demnach an Position 5 erfüllt, weswegen dieser Wert ausgegeben wird.

Jetzt ist noch etwas Feintuning nötig, damit die Formel in allen Perioden funktioniert und problemlos durchkopiert werden kann.

Da in der ersten Periode mit $I16:I16>=I$17 noch kein Array existiert und die VERGLEICH-Funktion in diesem Fall einen Fehler (#NV) ausgibt, fangen wir das Ganze über ein WENN-Funktion ab:

=WENN(I$5=1;(I$16>=I$17)*1;VERGLEICH(WAHR;$I16:I16>=I$17;0))

Zeile 5 enthält dabei in unserem Beispiel die laufende Periode.

Eine weitere #NV-Meldung taucht dann auf, wenn die Verkäufe mangels Bestand nicht alle abgewickelt werden können (z.B. wenn unsere Kontrollzellen in Zeile 20 anschlagen, weil versucht wird mehr zu verkaufen als auf Lager ist). Im Fall dieses Fehlers, soll einfach ein Nullwert ausgewiesen werden:

= WENNNV(WENN(I$5=1;(I$16>=I$17)*1 VERGLEICH(WAHR;$I16:I16>=I$17;0));)

Schließlich benötigen wir den Wert nur in den Perioden, in denen überhaupt Verkäufe stattfinden, sodass wir zur finalen (durchkopierbaren) Formel für Zelle I31 gelangen:

= WENN(I12;WENNNV(WENN(I$5=1;(I$16>=I$17)*1;VERGLEICH(WAHR;$I16:I16>=I$17;0)););)

Diese letzte Erweiterung prüft, ob I12 ungleich null ist. In diesem Fall wird die danach folgende (geschachtelte) Formel angewendet, ansonsten einfach ein Nullwert ausgegeben.

Sicherlich fragen Sie sich jetzt, wofür benötigen wir das alles überhaupt? Die Antwort lautet, da wir im Folgenden die gesamten Kosten aller Verkäufe bis zum jeweiligen Zeitpunkt ermitteln wollen.

• Der erste Verkauf im Februar wird aus den Käufen im Januar bestritten
• Der Verkauf im April wird bestritten aus Käufen aus dem Januar und März.
• Der Verkauf im Juni wird bestritten aus Käufen aus dem März und Mai.
• Der letzte Verkauf im November wird bestritten aus Käufen aus dem Mai, September und Oktober.

Betrachten wir die Verkäufe nochmal andersherum:

  • Die Verkäufe im Februar und April verwenden alle im Januar gekauften Mikroprozessoren sowie einen Teil der in März bezogenen.
  • Die Verkäufe im Februar, April und Juni verwenden alle im Januar und im März gekauften Mikroprozessoren sowie einen Teil der in Mai bezogenen.
  • Die Verkäufe bis einschließlich November verwenden die Prozessoren aller Einkäufe bis September sowie einen Teil der der im Oktober eingekauften Chips (im Bsp. zufällig 100%, da mit 330 Stücken der
    gesamte restliche Lagerbestand veräußert wird)

Damit haben wir einen Schlachtplan zur Ermittlung der gesamten Kosten für die jeweiligen Verkäufe:

  1. Bis zur Vorperiode der bei „Lfd. Periode letzter Kauf“ ausgewiesenen Periode werden alle Kosten
    summiert
  2. Für die bei „Lfd. Periode letzter Kauf“ ausgewiesene Periode ist der prozentuale Anteil der Stücke zu
    kalkulieren, die aus dieser Periode zusätzlich verwendet werden müssen.

Die bei „Lfd. Periode letzter Kauf“ ausgewiesene Periode kann im Grunde auch als jeweilige „Break-Even-Periode“ gesehen werden, weil die bis dort getätigten Käufe ausreichen, um alle Verkäufe durchführen zu können.

Schritt 2:

Wir werden nun also berechnen, wieviel Prozent aus der jeweiligen Break-Even-Periode zu verwenden sind, um exakt auf die gewünschte Verkaufsmenge zu kommen. Dazu nutzen wir die beiden Excel-Funktionen REST und BEREICH.VERSCHIEBEN.

Funktionsweise der REST-Funktion

Die REST-Funktion (Syntax: REST(Zahl;Divisor) gibt den Rest einer Division zurück. Das Ergebnis hat dasselbe Vorzeichen wie der Divisor. Beispielsweise gibt =REST(30;7) den Wert 2 zurück. Im Grunde ermittelt Excel dabei, wie oft der Divisor vollständig in die Zahl passt und zieht das Produkt aus dieser Zahl und dem
Divisor von der Zahl ab. Im Beispiel 4*7=28, damit ergibt sich der Rest als 30-28=2.

Für unsere Berechnungen verwenden wir einen kleinen Trick, in dem wir als Divisor die Zahl 1 verwenden. Auf diese Weise erhalten wir den nicht ganzzahligen Rest der Division, also immer Werte größer (oder gleich) Null und kleiner als 1. Werden also bspw. noch 60 von 100 Stücken benötigt, ergibt =REST(60/100;1) den Wert
0,6, d.h. von der 100 Stück-Charge müssten 60% verwendet werden. Die in diesem Beispiel verwendeten absoluten Zahlen (60 und 100) werden wir natürlich gleich noch durch Formeln dynamisieren.

Funktionsweise der BEREICH.VERSCHIEBEN-Funktion

Allgemein gibt die BEREICH.VERSCHIEBEN-Funktion einen Bezug zurück, der gegenüber einem angegebenen Ausgangsbezug versetzt ist. Der zurückgegebene Bezug kann eine einzelne Zelle oder ein Zellbereich sein. Die Anzahl der zurückzugebenden Zeilen und Spalten können vorgegeben werden.
Der Syntax lautet:

BEREICH.VERSCHIEBEN(Bezug; Zeilen; Spalten; [Höhe]; [Breite])

Dabei bedeuten die Argumente:

Bezug: Ausgangspunkt des Verschiebevorgangs

Zeilen: Anzahl der Zeilen, um die die obere linke Eckzelle des Bereichs nach oben (= negative Werte) oder nach unten (= positive Werte) verschoben wird.

Spalten: Anzahl der Spalten, um die die obere linke Eckzelle des Bereichs nach links (= negative Werte) oder nach rechts (= positive Werte) verschoben wird.

Höhe: Höhe des neuen Bezugs in Zeilen (pos. nach unten u. neg. nach oben)

Breite: Breite des neuen Bezugs in Spalten (pos. nach rechts u. neg. nach links)

Die beiden letzten Argumente, Höhe und Breite, sind lediglich optional. Die Funktion wird häufig (auch bei uns in Schritt 3 weiter unten) zusammen mit der SUMME-Funktion eingesetzt, um die Werte der Zellen des neuen Bezugs zu addieren.

FIFO – Prozentualen Anteil der letzten Periode ermitteln

Lassen Sie uns die kombinierte Formel bzw. deren Funktionsweise ansehen und analysieren. Ausgangspunkt soll dabei die Zelle I32 sein:

=REST((I$17-BEREICH.VERSCHIEBEN($H$16; I$31))/BEREICH.VERSCHIEBEN($H$8;;I$31);1)

Über den Teil BEREICH.VERSCHIEBEN($H$16;;I$31) wird die Zahl der kumulierten Käufe in der Break-Even-Periode ermittelt. Deswegen ist der Ausgangspunkt $H$16. Bewegen wir uns eine Spalte nach rechts erhalten wir die kumulierten Käufe für Januar, zwei Spalten nach rechts die für Februar etc. Um wie viele Spalten es nach rechts gehen soll, bestimmt die weiter oben ermittelte Zahl in Zeile 31 (= „Lfd. Periode letzter Kauf“ bzw. „Break-Even -Periode“).

I$17-BEREICH.VERSCHIEBEN($H$16;;I$31) zieht von den kumulierten Verkäufen der aktuellen Periode die kumulierten Käufe der Break-Even-Periode ab. Dabei ergibt sich immer ein negativer Wert, was aber zur Berechnung des Anteils beabsichtigt ist. Der Wert muss immer kleiner (oder gleich) der kumulierten Anzahl in der Break-Even-Periode sein. Diese haben wir ja genau so definiert.

Der Teil BEREICH.VERSCHIEBEN($H$8;;I$31) im Nenner der REST-Funktion (beim Argument ZAHL) ist die Anzahl der eingekauften Mikroprozessoren in der Break-Even-Periode.

Auf diese Weise wird mit der Gesamtformel der erforderliche prozentuale Anteil berechnet. Da wir diese Berechnung nur in den Monaten benötigen, in denen tatsächlich Verkäufe stattgefunden haben und in denen tatsächlich eine Break-Even-Periode in Zeile 31 berechnet wurde, schachteln wir die Formel in eine
entsprechende WENN-Funktion und erhalten beispielhaft für Zelle I32:

=WENN(I$12*I$31;REST((I$17-BEREICH.VERSCHIEBEN($H$16;;I$31))/BEREICH.VERSCHIEBEN($H$8;;I$31);1);)

Eine kleine Falle lauert hier noch: Sofern es keinen Rest gibt, also der Wert der REST-Funktion gleich Null ist, ergibt auch die Gesamtformel den Wert Null. In diesem Fall muss aber der Anteil der Break-Even-Periode 100% betragen, d.h. alle Prozessoren dieses Monats sind zu berücksichtigen (nicht gar keine). Im Excel-Beispiel ist dies bspw. beim letzten Verkauf im November der Fall. Wir müssen deshalb in der nun anstehenden Kostenermittlung diesen Spezialfall noch berücksichtigen.

Schritt 3:

 

Wenn ich Sie bis hier noch nicht verloren habe, dann holen Sie sich am besten einen Kaffee, denn jetzt kommt der interessanteste Teil. Um die Kostenbasis aller Verkäufe (in Zeile 33) zu ermitteln, sind verschiedene Komponenten zu berücksichtigen:

A) Zunächst benötigen wir die Kosten aller Käufe bis zu dem Monat, der vor der Break-Even-Periode liegt (wie weiter oben erläutert). Dazu nutzen wir die Formel:

=SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31)

Diese Kosten erhöhen sich aber, sofern 100% der Kosten aus der Break-Even-Periode verwendet werden müssen (d.h. der nächste Monat ebenfalls berücksichtigt werden muss => unser Spezialfall, den ich am Ende von Schritt 2 erwähnt hatte). Wir erweitern daher die Formel für diesen Fall

=SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31+(I$32=0)*1))

B) Jetzt müssen wir für die Break-Even-Periode den prozentualen Anteil der verwendeten Kosten ermitteln. Dies gelingt über:

=SUMME(BEREICH.VERSCHIEBEN($I$24;;;;I$31))-
SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31))

Wir ermitteln also im ersten Teil einfach die Kaufkosten aller Monate (also bis einschließlich der Break-Even-Periode) und ziehen davon (im 2. Teil) die Kaufkosten aller Monate vor der Break-Even-Periode ab. Damit bleiben nur die Kosten für die Break-Even-Periode übrig. Davon ist aber noch der „ungenutzte“ (d.h. nicht benötigte) Anteil Break-Even-Periode abzuziehen:

=BEREICH.VERSCHIEBEN($H$24;;I$31)*(1-I$32)

Setzen wir diese Teile bis hier zusammen, so erhalten wir:

=SUMME(BEREICH.VERSCHIEBEN($I$24;;;;I$31))-
SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31))-BEREICH.VERSCHIEBEN($H$24;;I$31)*(1-
I$32)+SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31+(I$32=0)*1))

C) Da wir nur die Kosten für die Verkäufe des jeweiligen Monats ermitteln müssen, ziehen wir von der soeben berechneten Kostensumme für alle Monate (inkl. des aktuellen Monats) einfach die Summe aus allen Vormonaten ab.

=SUMME(BEREICH.VERSCHIEBEN($I$24;;;;I$31))-
SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31))-BEREICH.VERSCHIEBEN($H$24;;I$31)*(1-
I$32)+SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31+(I$32=0)*1))-SUMME($H$33:H$33)

Achten Sie (bei allen hier erläuterten Formeln) auf die korrekten absoluten Bezüge ($-Zeichen), damit wir die
Formeln später nach rechts durchkopieren können.

D) Auch hier benötigen wir die Berechnung wieder nur in den Monaten, in denen tatsächlich Verkäufe stattgefunden haben und in denen tatsächlich eine Break-Even-Periode in Zeile 31 berechnet wurde. Wir schachteln also wieder und erhalten die finale Formel (für Zelle I33):

=WENN(I$12*I$31;SUMME(BEREICH.VERSCHIEBEN($I$24;;;;I$31))-
SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31))-BEREICH.VERSCHIEBEN($H$24;;I$31)*(1-
I$32)+SUMME(BEREICH.VERSCHIEBEN($H$24;;;;I$31+(I$32=0)*1))-SUMME($H$33:H$33);)

Die Mathematiker und Experten unter den Lesern werden bemerken, dass die obige Formel komplexer ist, als sie sein müsste. Das habe ich aber aus didaktischen Gründen bewusst so gemacht. Die Formel lässt sich durch Umstellungen auf ca. die Hälfte der Länge kürzen. Dies würde den Beitrag sprengen, ist aber in der Excel-Datei (in Zeile 34) enthalten.

Fazit

 
Nach all den formeltechnischen Mühen ist es nun auch einfach möglich, für alle Verkäufe unter Anwendung des FIFO-Verfahrens die Gewinne bzw. Verluste zu ermitteln (gesamt und pro Stück => vgl. Abb. 3)

Abb.3

Verkaufserlös und Kostenbasis haben wir weiter oben berechnet. Der jeweilige Gewinn bzw. Verlust ergibt sich aus dem Delta und kann z.B. im Fall von Aktien (nicht wie hier Mikroprozessoren) zur Steuerberechnung herangezogen werden.

Damit habe ich ihnen einen (hoffentlich nachvollziehbaren) makro- bzw. UDF-freien Berechnungsansatz für die FIFO-Methode gezeigt. Zugegeben habe ich schon weniger komplexe Sachverhalte modelliert, aber es ist wie es ist, die Lösung ermittelt zuverlässig die jeweilige FIFO-Kostenbasis für die Verkäufe und basiert
ausschließlich auf der Verwendung von Standard-Formeln ohne VBA-Unterstützung. Haben Sie eine elegantere Lösung, dann lassen Sie es mich wissen und hinterlassen unten einen Kommentar!

Wie üblich haben wir auch zu diesem Tutorial eine kostenlose Excel-Download-Datei vorbereitet. Diese erleichtert ihnen das Beispiel nachzuvollziehen und kann als Ausgangsvorlage für eigene Berechnungen genutzt werden.

Datei zum Beitrag anfordern

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

  Inhaltsverzeichnis

NEU: Cap Table Tool PRO

Für ihr Reporting und fundierte Verhandlungen in Finanzierungsrunden.

Bis zu 5 Runden inkl. Liquidationspräferenzen, Wandeldarlehen, Option Pools (ESOP/VSOP) und Exit-Szenario-Modellierung.