Erstellen Sie eine dynamische Produktrechnung in Excel

Erstellen Sie eine dynamische Produktrechnung in Excel

Ich versuche, eine dynamische Rechnung in Excel zu erstellen. Der dynamische Teil besteht darin, dass der Benutzer aus einer Liste auswählen kann, für welches Geschäft die Rechnung bestimmt ist. Ich versuche, die verfügbaren Artikel nach Auswahl des Geschäfts anzuzeigen.

Auf einem Blatt meiner Arbeitsmappe habe ich alle verschiedenen Tabellen, die die Geschäfte, Produkte und die Produkte definieren, die jedes Geschäft führt (Schnittmengendatensätze zwischen den beiden). In meinem Beispiel führt „Corner Market“ alle 4 Produkte, aber „Tim's Hardware“ hat nur 1/2-Zoll-Unterlegscheiben und Bohrersätze auf Lager.

Ich möchte eine dynamische Tabelle wie in N5 und N23 im verlinkten Screenshot generieren, wenn der Benutzer das richtige Geschäft auswählt (N3 und N21). Die Tabelle sollte sich also ändern, wenn sich der Wert für den Geschäftsnamen ändert. (Ich möchte nur eine Rechnung generieren, habe aber als Beispiel 2 in den Screenshot aufgenommen.) Der Benutzer kann dann die Mengenwerte eingeben, um den Preis jeder Position und den Gesamtbetrag der Rechnung zu generieren.

Ich suche Rat, wie ich so etwas am besten bewerkstelligen kann. Wenn möglich, versuche ich, VBA-Makros zu vermeiden. Ich vermute, eine Pivot-Tabelle könnte die Lösung sein, oder vielleicht etwas mit den Datenbeziehungen (mit denen ich nicht so vertraut bin).

Bildschirmfoto:https://i.stack.imgur.com/ICZDW.png

Jede Hilfe ist willkommen – Danke im Voraus!

Antwort1

Sie können die drei Tabellen zum Datenmodell von Power Pivot hinzufügen.

Beachten Sie jedoch, dass Power Pivot in den Office-Produkten enthalten ist, die in 'Wo ist Power Pivot?'. Die Beziehungen zwischen ihnen sind wie im folgenden Bild dargestellt.

Bildbeschreibung hier eingeben

DerGeschäfts-IDin Tabelle 2 undProdukt IDin Tabelle 3 sind Primärschlüsselfelder.

Anschließend können Sie eine Power Pivot-Tabelle erstellen.

Bildbeschreibung hier eingeben

DerName des Geschäftskann ein Filterfeld sein. „Produktname“ kann ein Zeilenfeld und „Stückpreis“ kann ein Wertefeld sein.

Die Spalten „Menge“ und „Preis“ können jedoch in die nächsten Spalten geschrieben werden.

Unter dem Titel „Preis“ können Sie die Formel eingeben =IF(P12="","",GETPIVOTDATA("[Measures].[Sum of Unit Price]",$N$11,"[Table3].[Product Name]","[Table3].[Product Name].&[1/2"" Washer]")*P12). Bitte ziehen Sie die Formel nach unten, um einen ausreichend großen Datenbereich abzudecken. Ich wähle beispielsweise den Bereich ausFrage 12: Frage 21um die Preiswerte zu erhalten. Der Teil vonGETPIVOTDATA("[Maße].[Summe des Stückpreises]",$N$11,"[Tabelle3].[Produktname]","[Tabelle3].[Produktname].&[1/2"" Unterlegscheibe]")Sie können stattdessen mit der Maus O12 auswählen.

Für „Gesamt“ können Sie die Formel eingeben =IF(SUM(Q12:Q21)>0,SUM(Q12:Q21),"").

Bildbeschreibung hier eingeben

verwandte Informationen