[Excel 2007] Flexibles Rabattsystem einfügen

eXtra

Herr der Pixel
Registriert
Nov. 2010
Beiträge
1.938
Hallo CB-Gemeinde,

ich habe gerade ein kleines Problem und weiß nicht so recht wie man es am besten lösen kann. Für die Excel-Kenner unter euch sicherlich eine Kleinigkeit, nur leider bin ich kein Excel-Kenner, höchstens ein Excel-Laie. Nun aber zu meinem Problem.

Ich habe hier eine Liste mit verschiedenen Artikeln zu verschiedenen Preisen. Ich soll nun ein flexibles Rabattsystem einfügen. Das soll dann (vereinfacht gesagt) folgendermaßen aussehen:

unter 100 €: 0,50 % Rabatt
von 100 € bis unter 500 €: 1 % Rabatt
über 500 €: 2 % Rabatt

Diese Prozentzahlen werden dann in einer seperaten Spalte eingetragen.
Leider weiß ich nicht, wie man das am besten umsetzen kann. Welche Funktion wäre dafür am geeignetsten?

Wäre super wenn sich jemand hilfsbereites finden würde.
 
Da kannst du einfach in einer Spalte neben den preis eine Wenn-Funktion einfügen.

Bspw. Preis in Spalte A, dann kommt in Spalte B:
=WENN(A1<=100;A1*0,995;WENN(A1<=500;A1*0.99;A1*0,98))​
In Worten:
=WENN(A1 kleiner gleich 100; dann A1 * 0,995; sonst WENN(A1 kleiner gleich 500; dann A1 * 0.99; sonst A1 * 0,98))​

Bzw. wenn du nicht den Endpreis, sondern den Rabatt ausgeben möchtest:
=WENN(A1<=100;0,005;WENN(A1<=500;0,01;0,02))​
 
Zuletzt bearbeitet:
Einfach perfekt, vielen Dank, du hast mir sehr geholfen.

Ich brauche sowohl den Rabatt als auch den Betrag, den man dann anschließend bei der Berechnung rausbekommt. Insofern hast du mir zum Teil bei etwas geholfen worum ich gar nicht gebeten hatte. Besser geht's nicht. :D

Ich liebe dieses Forum. :)
 
Dann solltest du aber mit der Formel für den Endpreis auf die Spalte mit dem Rabatt verweisen. Denn wenn sich mal der Rabatt ändert, wird der Endpreis automatisch angepasst. Andernfalls müsstest du neben dem Rabatt auch die Formel für den Endpreis korrigieren.

Bspw. Preis in Spalte A, dann kommt in Spalte B für den Rabat die zweite obige Formel:
=WENN(A1<=100;0,005;WENN(A1<=500;0,01;0,02))

Und dann in Spalte C für den Endpreis:
=A1*(1-B1)
 
Ja ich weiß, ich habe es dann anschließend so gemacht, dass der Preis mit dem gewährten Rabatt einfach multipliziert wird. Ist von da an ja keine große Sache, hatte nur Probleme mit der Anzeige des gewährten Rabatts für den jeweiligen Preis. Ein Endpreis ist übrigens nicht von nöten.

Vielen Dank nochmal für deine Mühe, hast was gut bei mir.

Edit: Ich hätte da nochmal ein Anliegen und möchte keinen neuen Thread aufmachen, deswegen frage ich nochmal hier nach. Es geht um ein Kombinationsfeld in Excel.

Die Artikel habe alle eine individuelle Artikelnummer. Wenn man nun die Artikelnummer in das Kombinationsfeld eingibt, soll in einem Feld der dazugehörige Preis angezeigt werden. Die Artikelnummern habe ich bereits mit dem Kombinationsfeld verknüpft und ein Feld ausgewählt, in dem dann der Preis angezeigt werden soll. Nur wird mir jetzt in dem Feld nicht der Preis, sondern die Artikelnummer angezeigt. Leider weiß ich nicht was man genau tun muss damit eben nicht nochmal die Artikelnummer sondern der dazugehörige Preis angezeigt wird.

Vielleicht kann mich da nochmal jemand erleuchten.
 
Zuletzt bearbeitet: (Weitere Frage)
Ich habe dir mal eine Tabelle angehängt.
Schwebt dir in der Art etwas vor?
 

Anhänge

Es geht schon in die richtige Richtung, ist aber noch nicht ganz das was mir vorschwebt. Mein Anliegen ist im Prinzip um einiges primitiver.

Ich habe selber mal ein Beispiel angehängt um zu verdeutlichen was ich meine.

Es ist ein simples Kombinationsfeld in dem man die Artikelnummer auswählen bzw. eintippen kann. In dem Feld rechts davon soll nun, wenn man die Artikelnummer in das Kombinationsfeld eingibt, der Preis des dazugehörigen Artikels erscheinen. Eigentlich eine simple Sache, nur weiß ich leider nicht was ich bei den Eigenschaften des Kombinationsfeldes verändern muss damit ich das gewünschte Ergebnis bekomme.
 
Warum mit einem Kombinationsfeld und nicht mit einer Liste?
 
Weil das eben so verlangt wird. Deine Lösung ist zwar schöner, bringt mich aber leider nur bedingt weiter.
 
Wer verlangt denn sowas?? ;)

Bei derartigen Elementen kommst du um VBA nicht drumherum wenn du den Inhalt auswerten möchtest!!
 
Mein Dozent. ;)

VBA? Ich seh schon, das wird hier wohl nicht ganz so einfach. Obwohl es eigentlich ziemlich einfach aussieht.
 
Ja leider nur mit VBA. Sonst kann Excel über Formeln nicht auf diese Elemente zugreifen!!!
Frag ruhig nochmal bei dem Dozenten. Evtl. hat er sich das auch zu einfach vorgestellt oder du ihn falsch verstanden?! :confused_alt:
 
Wie dem auch sei, ich muss dann mal schaun was ich jetzt damit mache. Dennoch vielen Dank für deine tatkräftige Mithilfe in dieser Angelegenheit.
 
Zuletzt bearbeitet:
Hallo,

natürlich geht es ohne Makro ...
Die Lösung ist im Anhang, suchen solltest du aber selbst, da ist der Lerneffekt eher gegeben und mein Kollege (der Dozent) freut sich eher :evillol:
 

Anhänge

Danke.
Ich habe es mal nachvollzogen. Hätte nicht gedacht, dass es so einfach ist.
Wieder etwas gelernt. :)
 
Danke GMG-CC, dein Lösungsansatz funktioniert einwandfrei! Wusste ich doch, dass es eine einfachere Methode geben muss um ans Ziel zu kommen. Mit VBA hätte ich es nicht hinbekommen, dafür fehlen mir einfach die nötigen Kenntnisse.

Eine Kleinigkeit wäre da aber noch (dannach gebe ich dann wirklich Ruhe, versprochen ;)): Wenn in dem Kombinationsfeld nichts steht, dann darf auch in dem Feld rechts davon nichts stehen. Im Moment wird noch #NV angezeigt wenn das Kombinationsfeld leer ist. Ich habe zwar selbst versucht es auf die Reihe zu bekommen, aber egal was ich an den Eigenschaften ändere, der erhoffte Effekt bleibt aus.

Benötgit man dafür VBA? So etwas in der Richtung "if empty, then..."? Es ist zum Verrücktwerden. :D
 
Zuletzt bearbeitet:
In das Tabellenblatt, auf dem die Kombobox sitzt:
Private Sub ComboBox1_Change()

If IsNull(ComboBox1) Then Range("H3") = ""

End Sub​
 
Zuletzt bearbeitet:
Wunderbar, genau so wie es sein soll, nun bin ich wunschlos glücklich. Es kann so einfach sein wenn man weiß wie es geht.

Vielen Dank euch allen für die Hilfe, es ist nicht selbstverständlich, dass einem in dem Maße (und so schnell!) geholfen wird. Ihr seid die Besten! :daumen:
 
Ohne VBA könnte man in die Tabelle eine Leerzeile einfügen, die bei Auswahl eben nichts anzeigt.
 
Stimmt, auf die Idee bin ich noch gar nicht gekommen. Da ich aber Cave Johnson's Vorschlag bereits umgesetzt habe und dieser einwandfrei funktioniert, lasse ich es so wie es ist.
 
Zurück
Oben