• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Indirect()

  • Onderwerp starter Onderwerp starter Gotty
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Gotty

Gebruiker
Lid geworden
16 sep 2004
Berichten
496
Hallo iedereen,

Hier ben ik weer :). Ik ben nu aangekomen bij de cursus INDIRECT(), maar deze heb ik ineens niet meer op software.helpmij.nl kunnen vinden dus heb ik het pdf-bestand hier neergezet.

Mijn vraag gaat over de oefenopgave op bladzijde 2/3, deze begint ongeveer op de helft van deze pagina met de text: Een mooier en in de praktijk beter... En de formule luid als volgt:
=VERT.ZOEKEN(INDIRECT(B9&"?!$B1");INDIRECT(B9&"?!$A$2:$I$40");$D$2)

Ik zal eerst in mijn woorden deze formule lezen, misschien kunnen jullie mij daarin nog wat bijsturen:
Het gaat erom dat je verticaal zoekt, de zoekwaarde wordt samengesteld door B9 (dit zal de waarde "2008" zijn) & B1 in een werkblad die ik niet thuis kan brengen, waarvan de kolom absoluut is en de rij relatief. Dan de tabelmatrix: Deze wordt samen gesteld door B9, dus waarschijnlijk wéér "2008", & het bereik A2:I40 waarvan beide kolommen en rijen absoluut zijn en in een werkblad staan die ik ook niet thuis kan brengen. En tot slot is het kolomindex_getal gelijk aan de waarde in =2008!D2 waarvan de kolom en de rij absoluut zijn, deze waarde is momenteel overigens "3". Het argument [benaderen] hebben ze weggelaten.

Nu is gelijk mijn vraag hoe je een tabelmatrix kunt aangeven op basis van een celwaarde en een bereik aangezien een tabelmatrix slechts uit een bereik bestaat. En of er op de plek van die rode vraagtekens geen bladnaam moet staan, (in dit geval zou dat dan "2009" zijn denk ik) schijnbaar niet want ik heb op de site Excellerend -> Gevorderdencursus Excel -> Les 5 Variabele functies een precies dezelfde formule gezien en daar stond er ook geen bladnaam. Maar misschien is dit iets om als voorbeeld aan te halen in een antwoord van jullie. Ik was overigens al voornemens om een quote van die pagina te halen, maar dan wordt het topic nóg drukker dus dat heb ik maar niet gedaan.

Maar goed, als ik op de plek van die vraagtekens geen bladnaam neerzet dan werkt de formule nog niet bij mij. Onder aan bladzijde 2/3 valt te lezen dat het rijnummer uit het voorbeeld in dit geval geen betekenis heeft en deze heb ik dan ook voor het gemak weggelaten, en in de formule de kolomindex_getal gewijzigd van $E$2 naar $D$2. Ik heb het Excel-bestand voor zover als ik kon afgemaakt en hier neergezet.

Ik hoop dat jullie me kunnen helpen.
 
Laatst bewerkt:
Beste Gotty,

Je zit in het verkeerde blad te zoeken, of het opgegeven datum bestaat niet (#N/B) in blad 2008.
zie bestandje.
 

Bijlagen

Hoi Gotty,

Leuk dat je op mijn site bent beland. Hopelijk heb je er wat aan!
Aanvulling op de opmerking van HSV. Je hebt staan:
Code:
=VERT.ZOEKEN(INDIRECT(B9&"!B1")

Dat betekent dat je zoekt op het tabblad waarvan je de naam in cel B9 hebt staan. De celverwijzing B1 geldt dus voor dàt tabblad. Maar op het tabblad 2008 staat in cel B1 niets. Je hebt wel een datum staan op het tabblad 2008, maar daarnaaar verwijs je niet. Als je in jouw bestand de inhoud van cel B9 van 2008 verandert in 2009, dan doet jouw formule het wel omdat op het tabblad 2009 in cel B1 een datum staat.

Overigens nog een opmerking. Omdat de naam van een tabblad ook kan bestaan uit woorden met een spatie, kun je het beste om de naam van het tabblad heen enkele qoutes zetten:
Code:
=VERT.ZOEKEN(INDIRECT("'"&B9&"'!B1");INDIRECT("'"&B9&"'!$A$2:$I$40");$D$2)

Groeten en veel plezier met Excel!

Richard
 
Hey Richard, Bedankt voor je informatie, ik ben nu klaar met de cursus die CorVerm aanbied op Helpmij en ben nu bezig met jou cursus. Het ene wist ik al, en het andere weer niet. Dus dit is een hele mooie aanvulling op de cursus van CorVerm. Bedankt voor je inzet!
 
Beste Gotty,

Wil je dan nog de call op opgelost zetten? Dat kan rechtsonder.

Groeten,
Richard
 
Hoi Gotty,

Overigens nog een opmerking. Omdat de naam van een tabblad ook kan bestaan uit woorden met een spatie, kun je het beste om de naam van het tabblad heen enkele qoutes zetten:
Code:
=VERT.ZOEKEN(INDIRECT("'"&B9&"'!B1");INDIRECT("'"&B9&"'!$A$2:$I$40");$D$2)

Groeten en veel plezier met Excel!

Richard

Hoi Richard en anderen,

Ik ben nu aangekomen bij jouw les over de functie indirect: Excellerend -> Gevorderdencursus Excel -> Les 5 Variabele functies. Daar kom ik aan bij het voorlaatste stukje: Werkbladnaam met spaties of cijfers.

daar heb ik een vraag die volgens mij heel veel te maken heeft met jou opmerking.

Even over jou opmerking: Als ik jouw formule in een kladblokje neerzet en de mijne eronder hou, op onderstaande manier:

03_verschil_in_jouw_opmerking.JPG


Probeer ik te zien wat de meerwaarde is van de enkele en dubbele aanhalingstekens die je er tussen hebt gezet, maar dat lukt me niet. Ik lees in je quote dat het te maken heeft met spaties, misschien is het zo dat als je die aanhalingstekens ertussen zet, je indirect later niet meer hoeft in te bouwen als je een werkblad maakt met spaties in de naam. Maar dat zou ik graag van jou horen.

Zo ook in het voorlaatste stukje: Werkbladnaam met spaties of cijfers wat ik net inleidde. Daar leg je uit dat de oorspronkelijke functie er zo uit zal zien:
=VERT.ZOEKEN(A1;'2008'!A1:C25;2;0). Vervolgens breid je deze formule uit als volgt: =VERT.ZOEKEN(A1;INDIRECT("'"&A2&"'"&"!A1:C25");2;0). Als ik dat ook in een kladblokje neerzet probeer ik het weer te zien en zie ik het weer niet:

04_verschil_in_jouw_cursus-formule.JPG


Zou je (of een ander natuurlijk) mij aan de hand van deze voorbeelden verder kunnen helpen? Bij voorbaat mijn dank.
 
Laatst bewerkt:
Ha Gotty,

In reactie op jouw openingspost: Ik lees net even door hoe jij de formule ziet/leest, en ik zie 2 dingen die je fout ziet/omschrijft.
1) Zoekwaarde en tabelmatrix hebben beide een absoluut bereik. Dit komt omdat het als tekst is opgenomen in de formule. De $ tekens hebben hier dus geen enkele invloed op.
2) Het kolomindex_getal wordt gehaald uit cel $E$2 (van het blad waar deze formule staat). Deze is absoluut door de $ tekens.

Als benaderen is weggelaten staat dit gelijk aan WAAR (of 1).
 
Ha Gotty,

In reactie op jouw openingspost: Ik lees net even door hoe jij de formule ziet/leest, en ik zie 2 dingen die je fout ziet/omschrijft.

1) Zoekwaarde en tabelmatrix hebben beide een absoluut bereik. Dit komt omdat het als tekst is opgenomen in de formule. De $ tekens hebben hier dus geen enkele invloed op.

2) Het kolomindex_getal wordt gehaald uit cel $E$2 (van het blad waar deze formule staat). Deze is absoluut door de $ tekens.

Als benaderen is weggelaten staat dit gelijk aan WAAR (of 1).

Hey Bob, mooi dat je daar toch even op terug komt.

1)Maar ik heb volgens mij geleerd in de cursus Excellerend -> Gevorderdencursus excel -> Variabele functies (tweede stukje) hoe het zit met absoluut kopiëren. Zodat ik uit het argument van de zoekwaarde opmaak dat alleen de kolom absoluut is. En van de tabelmatrix is inderdaad de kolom én de rij absoluut. Maar als dit niet (geheel) waar is zou het mooi zijn als je daar meer over kunt uitleggen.

2) Precies, zowel in kolom als in rij. Ik zag zojuist nog dat ik in de formule zeg $E$2 en in de omschrijving D2 noem. Maar in de formule moet dit voor het gemak $D$2 zijn vanwege dit:
Onder aan bladzijde 2/3 valt te lezen dat het rijnummer uit het voorbeeld in dit geval geen betekenis heeft en deze heb ik dan ook voor het gemak weggelaten, en in de formule de kolomindex_getal gewijzigd van $E$2 naar $D$2.

Het is echter alleen gemakkelijk als ik mijn vraagstelling juist omschrijf...
 
Laatst bewerkt:
Zoals gezegd is het bereik in jouw voorbeeld daar neer gezet als tekst (het staat tussen ""). Kijk maar:
Code:
=VERT.ZOEKEN(INDIRECT(B9&[COLOR="Red"]"?!$B1"[/COLOR]);INDIRECT(B9&[COLOR="red"]"?!$A$2:$I$40"[/COLOR]);$D$2)
Je ziet de $B1 tussen "" staan, en de $A$2:$I$40 staat ook tussen "". Oftewel, het is tekst. Dit staat dus vast. Bij het verlaatsen/kopieren van de formule blijft dit hetzelfde.
 
Zoals gezegd is het bereik in jouw voorbeeld daar neer gezet als tekst (het staat tussen ""). Kijk maar:
Code:
=VERT.ZOEKEN(INDIRECT(B9&[COLOR="Red"]"?!$B1"[/COLOR]);INDIRECT(B9&[COLOR="red"]"?!$A$2:$I$40"[/COLOR]);$D$2)
Je ziet de $B1 tussen "" staan, en de $A$2:$I$40 staat ook tussen "". Oftewel, het is tekst. Dit staat dus vast. Bij het verlaatsen/kopieren van de formule blijft dit hetzelfde.

Ik heb het eens uit geprobeerd en het klopt precies wat je zegt. Sterker nog: Ik moet die aanhalingstekens gebruiken, anders werkt de formule niet. Heeft dit misschien te maken met het feit dat je naar een ander werkblad verwijst?

Ik ben nu wel heel erg benieuwd waarom ik daar dan $-tekens heb moeten gebruiken, en ben nog steeds benieuwd wat de bedoeling is van al die aanhalingstekens.

In de onderste formule in onderstaande afbeelding hoef ik opeens geen dubbele aanhalingstekens te gebruiken, dit komt misschien weer omdat ik enkele aanhalingstekens gebruik. Zo zit ik dan voor mezelf te piekeren. Maar dat lukt dus niet zo. Zou je mij hier alsjeblieft zo veel mogelijk over willen uitleggen? Ik zal nog eens wat googlen.
 
Ik denk (maar kan het fout hebben) dat jij te snel te veel over excel wilt leren. Je wilt in enkele weken/maanden een aanzienlijk gedeelte van excel leren kennen.
Ik begrijp je wel, je ziet de mogelijkheden van excel en geniet van alle dingen die met excel kunnen.
Misschien moet je wat meer gaan genieten van excel, en er wat meer tijd voor nemen om excel goed te gaan leren kennen.
Reken maar dat de meeste excel helpers hier op het forum al wat jaartjes met excel bezig zijn. Ik heb er ook wat jaartjes over gedaan om redelijk wat te weten over excel..... en dan nog blijft er genoeg over om te leren.

Dus mijn tip: Neem wat meer tijd en probeer wat meer te genieten van excel.

p.s. Dit is allemaal goed bedoelde raad:thumb:
 
Ik denk (maar kan het fout hebben) dat jij te snel te veel over excel wilt leren. Je wilt in enkele weken/maanden een aanzienlijk gedeelte van excel leren kennen.
Ik begrijp je wel, je ziet de mogelijkheden van excel en geniet van alle dingen die met excel kunnen.
Misschien moet je wat meer gaan genieten van excel, en er wat meer tijd voor nemen om excel goed te gaan leren kennen.
Reken maar dat de meeste excel helpers hier op het forum al wat jaartjes met excel bezig zijn. Ik heb er ook wat jaartjes over gedaan om redelijk wat te weten over excel..... en dan nog blijft er genoeg over om te leren.

Dus mijn tip: Neem wat meer tijd en probeer wat meer te genieten van excel.

p.s. Dit is allemaal goed bedoelde raad:thumb:

Hoi Bob,

Allereerst waardeer ik je goede raad!

Ik ben momenteel met 5 dingen bezig: Slapen, eten, werken, huishouding en Microsoft Office momenteel Excel maar ik wil uiteindelijk het hele pakket kennen, inclusief VBA. Op het moment dat ik hier mee bezig ben geniet ik er al van, inderdaad, van de mogelijkheden die ik straks kan toepassen. Hoelang ik bezig ben met het leren maakt me niet uit, ik steek er al mijn vrije tijd in en ik zie wel wanneer ik alles ken. Ik ben overigens ook een beetje eigenwijs, en heb de afgelopen dagen zitten kijken en nog eens kijken en een beetje googlen. En nu snap ik gelukkig al wat meer van die formule. Maar het is inderdaad lastig uit te leggen. Bedankt voor alles en tot in het volgende topic :thumb:.
 
Kun je je ambities ook uitbreiden tot je ondertekening ?
 
Hoi,

Ik dacht: Laat ik mijn oude topic maar oppakken, want ik ben nu namelijk bezig om 2 voorbeeldbestandjes te maken voor mezelf waarin ik verwijzingen maak met indirect, 2 verwijzingen binnen dezelfde werkmap, 1 met spatie in de bladnaam en 1 zonder. En 2 verwijzingen naar een andere werkmap, ook hier 1 met spatie in de bladnaam en 1 zonder.

Ik moet er nog 1, en dat is een verwijzing naar een ander werkblad waarvan de bladnaam géén spatie heeft. Ik kan ook de formule aanhouden die als enig verschil heeft dat de bladnaam wél een spatie heeft(deze: =INDIRECT("'D:\Cursus Office\Om te onthouden\vormen van de formule indirect\[Werkmap 2.xls]"&A5&"'!C5") ), want dat maakt voor de uitkomst niets uit. Maar ik weet zeker dat als ik in de toekomst echt voor mezelf aan de slag ga, dat ik het makkelijker vind om geen overbodige karakters in de formule te hebben staan als ik zeker weet dat de bladnaam nooit een spatie krijgt. Ik heb al de hele morgen lopen te puzzelen, maar ik kan me een aantal helpmij-ers voorstellen voor wie het een peace of cake is om hier een voorbeeldje neer te zetten.

:thumb: Alvast bedankt.
 
Hoi,


Ik moet er nog 1, en dat is een verwijzing naar een ander werkblad waarvan de bladnaam géén spatie heeft. ik kan me een aantal helpmij-ers voorstellen voor wie het een peace of cake is om hier een voorbeeldje neer te zetten.

:thumb: Alvast bedankt.

Zoiets als in bijlage?
 

Bijlagen

Zoiets als in bijlage?

Bedankt voor je tijd maar dat was niet wat ik bedoelde, maar ik hier 2 bestandjes geupload, en als jij in "Werkmap 2" de waarde van "Werkmap 1 - A1" kunt weergeven via de formule =indirect() ben ik er :cool:.
 
Laatst bewerkt:
Bedankt voor je tijd maar dat was niet wat ik bedoelde, maar ik hier 2 bestandjes geupload, en als jij in "Werkmap 2" de waarde van "Werkmap 1 - A1" kunt weergeven via de formule =indirect() ben ik er :cool:.

cel B1: Werkmap 1.xls
cel B2: Blad
cel B3: A1

Code:
=INDIRECT("'["&B1&"]"& B2&"'!"&B3)

Met vriendelijke groet,


Roncancio
 
cel B1: Werkmap 1.xls
cel B2: Blad
cel B3: A1

Code:
=INDIRECT("'["&B1&"]"& B2&"'!"&B3)

Met vriendelijke groet,


Roncancio

Hey Roncancio, die is erg leerzaam, doe ik erbij
bedankt.gif
. Maar wat ik bedoel is om dus in "Werkmap 2" de waarde van "Werkmap 1 - A1" weer te geven via de formule =indirect() en dan ook volgens het volgende principe: =INDIRECT(A4&"!C4"). Ik kan ook deze manier aanhouden: =INDIRECT("'D:\[Werkmap 1.xls]"&A5&"'!C5") maar als de bladnaam geen spatie bevat en dat ook nooit zal doen vind ik het een onnodige warboel. Jammer dat ik het principe nog steeds niet zie van die aanhalingstekens. Maar ik weet bijna zeker dat het kan. het is namelijk een kruising tussen
=INDIRECT("'D:\[Werkmap 1.xls]"&A4&"'!C4") en =INDIRECT(A4&"!C4"). Wat je dan krijgt is een verwijzing naar een andere Werkmap waarvan de bladnaam geen spatie heeft. Sterker nog: "Geen spatie mag hebben" heeft'ie dat wel dan krijg je een foutmelding. Ik hoop dat het een van jullie lukt. Hier weer een linkje naar de bestanden.
 
Ik heb nog wat gevonden op internet, en dit is bijna wat ik bedoel. Hiermee kon ik de volgende formule in elkaar zetten:
=INDIRECT("'D:\[Werkmap 2.xls]Blad1'!C4") . Maar ik wil graag Blad1 vanuit een andere cel in kunnen geven, dan zet ik in plaats van Blad1 de celnaam er neer, en dan rest mij alleen nog de vraag hoe ik om ga met de enkele en dubbele aanhalingstekens. Als dit niet duidelijk genoeg is dan hoor ik dat graag, dat upload ik een bestandje als ik straks thuis ben.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan