
Bendroji formulė
=INDIRECT(sheet_name&"!A1")
Santrauka
Norėdami sukurti formulę su dinaminiu lapo pavadinimu, galite naudoti INDIRECT funkciją. Parodytame pavyzdyje formulė C6 yra:
=INDIRECT(B6&"!A1")
Pastaba: Netiesioginis tikslas yra sukurti formulę, kurioje lapo pavadinimas yra dinaminis kintamasis. Pvz., Galite pakeisti lapo pavadinimą (galbūt naudodami išskleidžiamąjį meniu) ir ištraukti informaciją iš kito darbalapio.
Paaiškinimas
NETIESIOGINĖ funkcija bando įvertinti tekstą kaip darbalapio nuorodą. Tai leidžia sukurti formules, kurios surenka nuorodą kaip tekstą, naudodamos sujungimą, ir gautą tekstą naudoja kaip galiojančią nuorodą.
Šiame pavyzdyje mes turime lapų pavadinimus B stulpelyje, todėl sujungiame lapo pavadinimą su langelio nuoroda A1, naudodami sujungimą:
=INDIRECT(B6&"!A1")
Po sujungimo turime:
=INDIRECT("Sheet1!A1")
„INDIRECT“ tai pripažįsta kaip teisingą nuorodą į langelį A1 „Sheet1“ ir grąžina reikšmę A1, 100. C7 langelyje formulė vertinama taip:
=INDIRECT(B7&"!A1") =INDIRECT("Sheet2!A1") =Sheet2!A1 =200
Ir taip toliau, kiekvienai C stulpelio formulei.
Tarpų ir skyrybos tvarkymas lapų pavadinimuose
Jei lapų pavadinimuose yra tarpų arba skyrybos ženklų, turėsite pakoreguoti formulę, kad lapo pavadinimas būtų suvyniotas į kelias kabutes ('):
=INDIRECT("'"&sheet_name&"'!A1")
kur lapo_vardas yra nuoroda, kurioje yra lapo pavadinimas. Šiame puslapyje pateiktame pavyzdyje formulė būtų tokia:
=INDIRECT("'"&B6&"'!A1")
Atkreipkite dėmesį, kad šis reikalavimas nėra būdingas netiesioginei funkcijai. Bet kuri formulė, nurodanti lapo pavadinimą su tarpu arba skyryba, lapo pavadinimą turi pridėti vienose kabutėse.