Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Excel] Verschillende "groepen" in formule

Pagina: 1
Acties:

  • Mopperman
  • Registratie: Maart 2006
  • Laatst online: 18-10 08:57
Goedendag,

Voor een excel sheet ben ik bezig met een bereken schema, nu gaan de kosten hierin gepaard met verschillende gewichtsklasse,

Wat dus het idee was is om een formulle te creeren die het volgend ein principe doet

When Under 45KG, Weight x Price
When between 46-100KG, Weight x Price
....

etc..

Nu ben ik al sinds vorige we op zoek naar een oplossing voor dit maar kom er niet zo 1.2.3 uit...
iemand die misschien een idee heeft?

I can see clearly now the rain has gone. I can see all obstacles in my way.


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
kijk eens naar de als functie...

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Nu ben ik al sinds vorige we op zoek naar een oplossing voor dit
Even uit nieuwsgierigheid: hoe zoek je dan? In een week tijd is de inhoudsopgave van F1 wel te lezen, volgens mij. Een 1-op-1 antwoord krijg je natuurlijk nooit, maar dat lijkt me ook niet hoeven.

Inderdaad gewoon de ALS() functie gebruiken. Overigens zie ik geen verschil tussen 'When Under 45KG, Weight x Price' en 'When between 46-100KG, Weight x Price'. Doe dan altijd gewicht*prijs ;)

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Mopperman
  • Registratie: Maart 2006
  • Laatst online: 18-10 08:57
he zit als volgt.

Van enkele leveranciers krijgen wij hier prijslijsten toegestuurd.

Deze bezitten de info zoals Airports en gewicht.

Nu is het zo dat als een pakket bijv. 35 KG weegt, hij in de klasse <45kg valt

Deze klasse is dan bijv. 2.20 euro/kg, Een ander pakket weegt dan bijv. 65KG, en zit dan bijv. in de 2de klasse welke weer 2.00 euro/kg kost. komt er dus op neer dat ik van verschillende gewichtsklasse het gewicht moet vermenigvuldigen met het bedrag, en dar een totaal uit moet laten komen... Klinkt eenvoudig, maar met de ALS/IF functie gaat dat niet zo 1-2-3 lukken ben ik bang...

I can see clearly now the rain has gone. I can see all obstacles in my way.


  • SinergyX
  • Registratie: November 2001
  • Laatst online: 13:03

SinergyX

____(>^^(>0o)>____

Dus steeds over het meerdere wordt het bedrag van de classe erna berekent?
Kan nog steeds 'makkelijk' met de als/if functie.

(dus bv die 65kg wordt 45kg afrekend op 2.2 en de overige 20kilo op 2 euro?)
Heb ik recent nog een formule mee gemaakt, mijne was met 5 groepen en had gewoon 5 als functies samen zitten voegen (bij elke if->ja volgende als, tot je bij een < statement komt).

Ze ze eerst per groep onder elkaar, ga ze daarna samenvoegen. Zal eens kijken of ik de mijne nog ergens heb.

[ Voor 12% gewijzigd door SinergyX op 28-07-2008 16:23 ]

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • Mopperman
  • Registratie: Maart 2006
  • Laatst online: 18-10 08:57
nee,

tot 45KG op 2.20
vanaf 46KG tot 65KG op 2.00 (dus totaal gewicht op deze klasse)

edit, voorbeeldje zou makkelijk zijn, als je hem hebt, heel graag ;)

[ Voor 28% gewijzigd door Mopperman op 28-07-2008 16:30 ]

I can see clearly now the rain has gone. I can see all obstacles in my way.


  • SinergyX
  • Registratie: November 2001
  • Laatst online: 13:03

SinergyX

____(>^^(>0o)>____

Dat zeg ik toch? :P (afrekening over het meerdere per groep).

Dus in jou voorbeeld (stel pakket is 64 kilo):
Als(pakket>45;45*2.20;pakket*2.20)+als(pakket>65;65-40*2.00;pakket-45*2.00)
maakt
(45*2.20)+(64-45*2.00) = 99+38 = 137

Even snel, denk dat ik wel foutje maak op de grensgevallen maar neem aan het dat duidelijk is? :P

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • Bolukan
  • Registratie: Oktober 2002
  • Laatst online: 12:05
kijk eens bij vert.zoeken, probeer dat met als 4de parameter WAAR (gelijk of groter dan, maar kleiner dan volgende staffel).

[ Voor 86% gewijzigd door Bolukan op 28-07-2008 17:05 ]


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Dat is inderdaad een mooiere oplossing.
Klinkt eenvoudig, maar met de ALS/IF functie gaat dat niet zo 1-2-3 lukken ben ik bang
{.......}
voorbeeldje zou makkelijk zijn, als je hem hebt, heel graag ;)
Geef dan ook even aan waar je vastloopt als je het zelf (desgewenst op basis van F1) hebt geprobeerd te maken, want het klinkt redelijk basaal dus ik zie niet waar je vastloopt :)

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Mopperman
  • Registratie: Maart 2006
  • Laatst online: 18-10 08:57
waar ik vast loop is eigenlijk op het punt wat sinergy aangeeft, dat lukt me nog wel maar het moet als volgende

(45*2.20)+(64-45*2.00) = 99+38 = 137

kijk, bijv. met 35kg zou de bereken als volgt moeten worden

(35*2.20)+(0*2.00) = 77

bij bv. 63

(0*2.20)+(63*2.00) = 126

dus de voorgaande (lagere) KG, die dus weer hoger zijn asl groep 1 moeten volledig in groep 2 vallen, zijn die weer hoger dan groep 2, dan groep 3 en verder...

I can see clearly now the rain has gone. I can see all obstacles in my way.


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Dat is juist de simpelste manier. Zet in A1 en A2 de prijzen voor kleiner en groter dan 65. Dan als in kolom B de echte gewichten staan:

de totaalprijs C1 = ALS (B1 > 65; B1*A1; B1*A2)

Als er meer gewichtklasse zijn dan kan je geneste ALS functies maken; als <65 dan ... anders als < 100 dan ... anders als < 200 dan ... etc. Maar dan is verticaal zoeken al snel makkelijker en zeker makkelijker onderhoudbaar. Zoek in dit forum even op het gebruik van verticaal zoeken :) Je wilt dan een hulpkolom gebruiken. Zet in kolom C alleen de effectieve prijs-per-kilo die je opzoekt via = vert.zoeken () en dan ik kolom D doe je =C*B

Er is nog wel tenminste een derde manier, maar laten we het hier maar bij houden :+

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • SinergyX
  • Registratie: November 2001
  • Laatst online: 13:03

SinergyX

____(>^^(>0o)>____

Mopperman schreef op dinsdag 29 juli 2008 @ 08:23:
dus de voorgaande (lagere) KG, die dus weer hoger zijn asl groep 1 moeten volledig in groep 2 vallen, zijn die weer hoger dan groep 2, dan groep 3 en verder...
Ah kijk, dan had ik je toch verkeerd begrepen.

Maar, gaat vert.zoeken wel goed? Zover ik dacht pakt die het 'hoogst' mogelijk cijfer dat er onder zit.

Heb je bv een matrix van 10,20,30,40 krijg je bij bv 35, 30 en bij 41, 40. Terwijl die juist de t/m waarde moet zoeken of je moet de prijs steeds 1 'groep' hoger zetten. Ik weet niet hoeveel 'groepen' er zijn, maar dan zou ik gewoon een serie als in elkaar steken. bv

=als(A1>klass1;als(A1>klass2;als(A1>klass3;A1*hoogste;A1*klass3);A1*klass2);A1*klass1)
of in cellen:
=ALS(A1>B1;ALS(A1>B2;ALS(A1>B3;A1*C4;A1*C3);A1*C2);A1*C1)
A1 als zoekwaarde, B1 t/m B4 met de groepen (hoogste) en C1 t/m C4 de prijzen. Kan je ook natuurlijk met absolute cijfers vullen.

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


Verwijderd

zowel de functies als & vert.zoeken kunnen gebruikt worden. bij de als-functie gebruik je voor de duidelijkheid beter de onder- en bovengrens (in kol b de gewichten):
code:
1
=als(en(b2>0;b2<45);2.2*b2;0)+als(en(b2>=45;b2<65);2*b2;0)
voor extra duidelijkheid kan je de aparte als-clausules in 1 cel onder mekaar zetten met alt+enter (bv. na het +-teken); zo zie je meteen of je alle gewichtklasses meehebt in je formule.

bij gebruik van de vert.zoeken functie moet inderdaad rekening gehouden worden met de opmerking van SinergyX hierboven. maar als de tabel gemaakt wordt met negatieve gewichten zal het benaderingsalgoritme van deze functie ook correct functioneren:
code:
1
2
3
4
5
6
 A   B
-65  2,2
-45  2
-0.01  2
bv. cel d1 bevat gewicht
formule: =vert.zoeken(-d1;a2:b4;2;waar)*d1
Pagina: 1