Am 04.06.2021 um 20:57 schrieb Silvio Siefke:
> Guten Abend,
> 
> ich habe gerade die Auswahllisten entdeckt, das würde mein Preiskalkulator
> ein wenig vereinfachen. Dazu eine kurze Frage, okay bisschen umständlich 
> dann doch, im Netz bin ich nicht wirklich fündig geworden.
> 
> Nehmen wir an wir haben ein Auswahlfeld mit Produkten:
> 
> |A            |B      |C      |D      |E      |F      |
> Auswahlfeld
> -Produkt A
> -Produkt B
> -Produkt C
> 
> Die Produkte haben unterschiedliche Verbrauch pro m, unterschiedliche 
> Gebindegröße und natürlich daraus resultierend ein anderen Preis pro
> Gebinde.

Ich vermute mal (da wären wir wieder bei dem Problem "knappe
Beschreibung, die nur mit Vorwissen zu verstehen ist"), du meinst so was
wie "Produkt A gips nur in den Größen 100 ml, 250 ml, 500 ml, während
Produkt B nur in 250 g, 500 g und 1 kg verfügbar ist" oder so; richtig?

> Kann man es erreichen das man im Auswahlfeld etwas auswählt, dann 
> entsprechend B der Verbrauch (aufgerundet Gebinde) berechnet und 
> in E der Preis des Gebindes?

Ich musste da etwas rätseln, bis ich darauf kam, dass du möglicherweise
"entsprechend *in* B" meintest; kann das sein?

> Verbrauch berechnen zur Zeit und das natürlich ein paar mal. 

Äh; wenn du mal erklären könntest, was genau du mit "Verbrauch" meinst,
dann könnte ich mir vielleicht auch vorstllen, was du mit "berechnen"
meinst.

> Mit
> einem Auswahlfeld könnte man es übersichtlicher gestalten und vielleicht
> mal später Fehler abwehren in Form von Auswahl X benötigt dringend ein
> anderes Produkt in einen anderen Auswahlfeld.

Das kling genau nach
http://www.ooowiki.de/G%C3%BCltigkeit?highlight=%28schraube%29#Voneinander_abh.2BAOQ-ngige_G.2BAPw-ltigkeitsbereiche

> |A            |B                      |C      |D      |E      |F      |
> Produkt B     =ROUNDUP(A2*0,05/30)                    10,00   =B*E

Ähm; in B2 kannst du nicht direkt auf A2 zugreifen; dort steht ja nur
ein Text. Du müsstest schon SVERWEIS (oder WVERWEIS oder VERWEIS; musst
du mal schauen, was für deinen Fall geeeigneter ist) verwenden, um
überhaupt erst mal den zum Inhalt von A2 gehörenden *Datensatz* in einer
Liste zu finden. Also z.B.

| =ROUNDUP(SVERWEIS(A2;$L$1:$P$20;3;0)*0,05/30)

(angenommen, in L2:20 stehen die Produktnamen, und in N2:N20 die
zugehörigen Verbräuche; was auch immer das sein mag).

Ich würde dir allerdings raten, den SVERWEIS in eine eigene Zelle/Spalte
zu setzen, dann kannst du nämlich Fehler abfangen (nehmen wir mal C2 an):

| =WENN(ISTFEHLER(C2;"unbekanntes Produkt";ROUNDUP(C2*0,05/30)

(und analog dazu auch F2 entsprechend erweitern, dass dann dort eben nur
ein Leerstring ausgegeben wird).

Ist einfach etwas augenfälliger als ein schlichtes "#NV".

Zum Thema Gebindegrößen: Möglicherweise gips nur einige wenige Sets an
Gebindegrößen, so wie in obigem Beispiel die Sets "100 / 250 / 500 ml"
und "250 / 500 1.000 g". Dann würde ich empfehlen, diese ebenfalls
auszugliedern in eine eigenständige Liste, und analog zu oben nur einen
Verweis ("Set-ID") auf den jeweiligen Set dem Produkt "anhängen". Klingt
erst mal nach Verkomplizierung, ist in Wirklichkeit aber eine
Vereinfachung der Schreibarbeit.

Wenn du geschickt bist, kannst du die Set-IDs auch wieder in eine
Auswahlliste stecken, dann kannst du das ganz einfach in anderen Zeilen
kopieren (musst nur darauf achten, die Bereichsangabe für die Quelle als
absolute Adresse an zu geben, sonst wandert der Quellbereich mit).

Übrigens gibt es auch die Möglichkeit, dass du Zellbereiche (also z.B.
den kompletten Datensatz zu einem Produkt; oder einen ausgewählten
Gebindegrößen-Set o.ä.) nicht nur in Auswahllisten ausgibst, sondern
auch direkt in einen anderen Zellbereich spiegeln. Das nennt sich dann
Matrix-Formel (lies das mal in der Hilfe nach). Dazu gibt es im
wesentlichen zwei Herangehensweisen, entweder mittels INDEX oder mittels
VERSCHIEBUNG. Ich persönlich bevorzuge letzteres, weil die Funktion
sowieso auch in vielen andern Fällen hilfreich eingesetzt werden kann.
Gib mal irgendwo (mit genug Platz nach rechts und unten) z.B.

| =VERSCHIEBUNG(L2;0;0;5;2)

(bezogen auf obiges Beispiel mit $L$1:$P$20) mittels SHIFT-STRG-ENTER
(aka als Matrixformel) ein.

Wolfgang
--


-- 
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Antwort per Email an