Toon posts:

[OO calc 3.2] automatisch invullen

Pagina: 1
Acties:

Onderwerpen


  • Punkie
  • Registratie: oktober 2005
  • Laatst online: 28-04 10:39
Probleembeschrijving
De waarde van het veld "prijs" moet worden aangepast aan de hand van de waarde van een ander veld "CPU". De koppeling tussen de waarden voor velden CPU en prijs staat beschreven in een tabel:
code:
1
2
3
4
  CPU          prijs
   i750         175
   Q8800        331
   X3           12

In een andere tabel voeren we gegevens in. Wanneer we veld CPU invullen met vb i750, dan zou de waarde van veld prijs moeten ingevuld worden, zie onderstaand voorbeeld.
code:
1
2
3
4
                  prijs
klant   MB
CPU     i750      175
totaal            175

Nu is het probleem, hoe kan je dat doen? Het lijkt me iets triviaal maar als spreadsheet-noob weet ik het toch even niet.

  • Punkie
  • Registratie: oktober 2005
  • Laatst online: 28-04 10:39
Oplossing
Weet niet of dit snel en efficiënt is maar het werkt.

Ten eerste zoeken we de positie in de koppelingstabel voor de overeenkomstige waarde van veld CPU in de invoertabel op.
invoerveldCPU is een referentie naar het veld in de invoertabel waarin de i750 hebben geschreven, eg B3
koppelingstabelCellrange is de range met de mogelijke waarden voor veldCPU, eg SheetKoppeling.A2:A4
code:
1
=match(invoerveldCPU ;koppelingstabelCellrange)

resultaat hiervan is 1 (1e cell in de range)
Met deze positie zoeken we de waarde op van de prijs mbv de functie offset
code:
1
=offset(koppelingstabel;1;match(invoerveldCPU ;koppelingstabelCellrange)-1;1)


Nadeel is dat dit allemaal met de hand in elkaar gedraaid moet worden. Men kan nog een column lookup doen (dmw match) om de juiste kolom "prijs" te zoeken ipv hard coded een spring van 1 te maken. Bovendien zijn de cell ranges, startposities etc niet dynamisch uitbreidbaar.
Iemand een beter idee/bemerkingen?

  • farmertjes
  • Registratie: maart 2010
  • Laatst online: 14-12-2020

flickr


  • Punkie
  • Registratie: oktober 2005
  • Laatst online: 28-04 10:39
idd die Vlookup of hlookup zijn eigenlijk functies die een combinatie van offset en match zijn
dus zoiets als
code:
1
=VLOOKUP(cpu;koppeling.A1:K40;MATCH(prijs;koppeling.A1:H1);0)

haalt de prijs voor een product "cpu".
bedankt :)


Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee