![]() |
Excel
Ik probeer met excel naar cellen te verwijzen, maar het lukt niet echt.
Ik heb drie kolommen. De eerste twee bevatten al getallen. Bijvoorbeeld zo (de ene is langer dan de andere): 3 ..... 2 7 ..... 5 25 58 12 Nou wil ik afhankelijk van de tweede kolom naar de eerste verwijzen. Als er 2 staat in de tweede kolom, wil ik het tweede cijfer uit de eerste. Namelijk 7. Als die twee daarentegen een vier was, dan wil ik naar het vierde cijfer verwijzen. Namelijk 58. Is er niet de een of andere mogelijkheid om dit te doen? |
Ik weet niet welke excel je hebt. Ik heb Engelse excel 2007 en daarin kun je =INDIRECT("A"&B1) zetten als je in dit geval naar A2 wil verwijzen (je eerste kolom heb ik even A genoemd en je tweede B).
Als je Nederlandse excel hebt weet ik niet precies hoe de functie heet maar ik vermoed hetzelfde... |
Ik gebruik zelf geen Excel, maar vanuit mijn ervaring met programmeren zou ik bijv. een "case statement" gebruiken. Misschien zit een dergelijke functie ook in Excel?
dr.rootz |
Je hebt in Excel een IF()-functie, wat eigenlijk een simpel broertje is van een CASE (geen idee of dat in Excel bestaat, kan je opzoeken in de functietool). Maar een indirecte verwijzing is véél properder:
stel je hebt vandaag die 5 getallen in je kolom staan, dan gaat de formule in die cel er ongeveer als volgt uitzien: Code:
IF(B1=1;A$1;IF(B1=2;A$2;IF(B1=3;A$3;IF(B1=4;A$4;IF(B1=5;A$5;)))) Stel je voor dat je nu 100 getallen in die kolom hebt staan, dan kom je met 100 van die geneste IF-jes af: zeer foutgevoelig in Excel, helemaal onleesbaar (zelfs hierboven is het amper te begrijpen, in een klein Excel-celletje is het al helemaal zottenwerk). Een case zou iets properder zijn, maar dat hangt maar af van de syntaxis van Excel daarvoor (als het bestaat). Met indirecte verwijzing, het is spijtiggenoeg iets geavanceerder programmeerwerk (indirecte verwijzingen worden ook gebruikt als je low-level een computer (of microcontroller) aan het programmeren bent), blijft de formule even kort of het nu gaat over 5 getallen of 1000; en het zal ook wel sneller werken dan 1000 IF'jes. |
Citaat:
|
Alle tijden zijn GMT +1. Het is nu 18:49. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.