I can see clearly now the rain has gone. I can see all obstacles in my way.
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.Nu ben ik al sinds vorige we op zoek naar een oplossing voor dit
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)
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.
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.
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.
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?
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.
[ Voor 86% gewijzigd door Bolukan op 28-07-2008 17:05 ]
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 vastlooptKlinkt 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
'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)
(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.
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
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)
Ah kijk, dan had ik je toch verkeerd begrepen.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...
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
1
| =als(en(b2>0;b2<45);2.2*b2;0)+als(en(b2>=45;b2<65);2*b2;0) |
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:
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 |