Excel-formule: dynamische werkmapreferentie -

Inhoudsopgave

Generieke formule

=INDIRECT("'("&workbook&")"&sheet&"'!"&ref)

Samenvatting

Als u een dynamische werkbladverwijzing wilt maken - een verwijzing naar een andere werkmap die is gemaakt met een formule op basis van variabelen die kunnen veranderen - kunt u een formule gebruiken die is gebaseerd op de functie INDIRECT.

In het getoonde voorbeeld is de formule in E6:

=INDIRECT("'("&B6&")"&C6&"'!"&D6)

Uitleg

De kern van deze formule is om een ​​volledige verwijzing naar een bereik in een andere werkmap op te bouwen als tekst, en vervolgens de functie INDIRECT te gebruiken om de tekst naar een daadwerkelijke verwijzing te converteren.

Een verwijzing naar een extern werkblad ziet er als volgt uit:

'(voorbeeld data.xlsx) Blad1'! A1

Let op de vierkante haken (()) rond de werkmapnaam, enkele aanhalingstekens ('') rond het werkblad + blad en het uitroepteken (!) Dat volgt.

Om een ​​verwijzing als deze met tekst te maken, gebruiken we aaneenschakeling om waarden uit de kolommen B, C en D samen te voegen met de vereiste haakjes, aanhalingstekens en uitroepteken:

=INDIRECT("'("&B6&")"&C6&"'!"&D6)

Het resultaat wordt in INDIRECT ingevoerd als de ref_text:

=INDIRECT("'(sample data.xlsx)Sheet1'!A1")

De functie INDIRECT evalueert vervolgens de tekst en converteert deze naar een referentie. Excel volgt de verwijzing en retourneert de waarde bij de opgegeven verwijzing.

Opmerking: als de verwijzing ongeldig is, of als de werkmap waarnaar wordt verwezen niet open is, zal INDIRECT een #REF-fout genereren. U kunt deze fout opvangen met de IFERROR-functie en desgewenst een aangepast resultaat weergeven.

Interessante artikelen...