Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Sa unang tingin (lalo na kapag nagbabasa ng tulong), ang function HINDI DIREKTA (INDIRECT) mukhang simple at kahit na hindi kailangan. Ang esensya nito ay gawing ganap na link ang text na mukhang isang link. Yung. kung kailangan nating sumangguni sa cell A1, maaari tayong gumawa ng direktang link (magpasok ng katumbas na sign sa D1, mag-click sa A1 at pindutin ang Enter), o maaari nating gamitin HINDI DIREKTA para sa parehong layunin:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Pakitandaan na ang argumento ng function – isang sanggunian sa A1 – ay ipinasok sa mga panipi, upang, sa katunayan, ay teksto dito.

"Well, OK," sabi mo. "At ano ang pakinabang?" 

Ngunit huwag husgahan ayon sa unang impresyon - ito ay mapanlinlang. Makakatulong sa iyo ang feature na ito sa maraming sitwasyon.

Halimbawa 1. Transpose

Isang klasiko ng genre: kailangan mong i-on ang vertical na dia

uka sa pahalang (transpose). Siyempre, maaari kang gumamit ng isang espesyal na insert o function TRANSP (TRANSPOSE) sa isang array formula, ngunit maaari kang makayanan ang aming HINDI DIREKTA:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Ang lohika ay simple: upang makuha ang address ng susunod na cell, idikit namin ang titik na "A" na may espesyal na karakter na "&" at ang numero ng hanay ng kasalukuyang cell, na ibinibigay sa amin ng function. COLUMN (COLUMN).

Ang kabaligtaran na pamamaraan ay mas mahusay na gawin nang medyo naiiba. Dahil sa oras na ito kailangan nating bumuo ng isang link sa mga cell B2, C2, D2, atbp., mas maginhawang gamitin ang R1C1 link mode sa halip na ang klasikong "labanan sa dagat". Sa mode na ito, ang aming mga cell ay mag-iiba lamang sa numero ng column: B2=R1C2, C2=R1C3, D2=R1C4 at iba pa

Dito pumapasok ang pangalawang opsyonal na argumento ng function. HINDI DIREKTA. Kung ito ay pantay KASINUNGALINGAN (MALI), pagkatapos ay maaari mong itakda ang link address sa R1C1 mode. Kaya madali nating mailipat ang pahalang na hanay pabalik sa patayo:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Halimbawa 2. Sum by interval

Nasuri na namin ang isang paraan ng pagbubuod sa isang window (range) ng isang ibinigay na laki sa isang sheet gamit ang function TANGGALIN (OFFSET). Ang isang katulad na problema ay maaari ding malutas gamit HINDI DIREKTA. Kung kailangan nating i-summarize ang data lamang mula sa isang partikular na saklaw-panahon, maaari nating idikit ito mula sa mga piraso at pagkatapos ay gawing isang ganap na link, na maaari nating ipasok sa loob ng function. SUM (SUM):

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Halimbawa 3. Smart table dropdown list

Minsan hindi tinatrato ng Microsoft Excel ang mga pangalan at column ng matalinong talahanayan bilang mga buong link. Kaya, halimbawa, kapag sinusubukang lumikha ng isang drop-down na listahan (tab Data – Pagpapatunay ng Data) batay sa hanay Empleyado mula sa matalinong mesa Mga tao magkakaroon tayo ng error:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Kung "i-wrap" natin ang link sa ating function HINDI DIREKTA, pagkatapos ay madaling tatanggapin ito ng Excel at ang aming drop-down na listahan ay dynamic na maa-update kapag nagdaragdag ng mga bagong empleyado sa dulo ng smart table:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Halimbawa 4. Unbreakable Links

Tulad ng alam mo, awtomatikong itinatama ng Excel ang mga reference na address sa mga formula kapag naglalagay o nagtatanggal ng mga row-column sa isang sheet. Sa karamihan ng mga kaso, ito ay tama at maginhawa, ngunit hindi palaging. Sabihin nating kailangan nating ilipat ang mga pangalan mula sa direktoryo ng empleyado patungo sa ulat:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Kung maglalagay ka ng mga regular na link (ipasok ang =B2 sa unang berdeng cell at kopyahin ito pababa), pagkatapos ay kapag tinanggal mo, halimbawa, Dasha, makukuha namin ang #LINK! error sa berdeng cell na naaayon sa kanya. (#REF!). Sa kaso ng paggamit ng function upang lumikha ng mga link HINDI DIREKTA hindi magkakaroon ng ganoong problema.

Halimbawa 5: Pagkolekta ng data mula sa maraming sheet

Ipagpalagay na mayroon kaming 5 sheet na may mga ulat ng parehong uri mula sa iba't ibang mga empleyado (Mikhail, Elena, Ivan, Sergey, Dmitry):

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Ipagpalagay natin na ang hugis, sukat, posisyon at pagkakasunud-sunod ng mga produkto at buwan sa lahat ng mga talahanayan ay pareho - ang mga numero lamang ang naiiba.

Maaari kang mangolekta ng data mula sa lahat ng mga sheet (huwag isama ito, ngunit ilagay ito sa ilalim ng bawat isa sa isang "pile") na may isang formula lamang:

Pagsusuri ng INDIRECT function sa pamamagitan ng mga halimbawa

Tulad ng nakikita mo, ang ideya ay pareho: idikit namin ang link sa nais na cell ng ibinigay na sheet, at HINDI DIREKTA ginagawa itong "live". Para sa kaginhawahan, sa itaas ng talahanayan, idinagdag ko ang mga titik ng mga haligi (B,C,D), at sa kanan - ang mga numero ng linya na kailangang kunin mula sa bawat sheet.

Pitfalls

Kung gumagamit ka ng HINDI DIREKTA (INDIRECT) kailangan mong tandaan ang tungkol sa mga kahinaan nito:

  • Kung magli-link ka sa isa pang file (sa pamamagitan ng pagdikit ng pangalan ng file sa mga square bracket, pangalan ng sheet, at cell address), gagana lang ito habang bukas ang orihinal na file. Kung isasara natin ito, makukuha natin ang error na #LINK!
  • Hindi maaaring tumukoy ang INDIRECT sa isang dynamic na pinangalanang hanay. Sa static - walang problema.
  • Ang INDIRECT ay isang pabagu-bago ng isip o "volatile" na function, ibig sabihin, ito ay muling kinakalkula para sa anumang pagbabago sa anumang cell ng sheet, at hindi lamang nakakaimpluwensya sa mga cell, tulad ng sa mga normal na function. Ito ay may masamang epekto sa pagganap at ito ay mas mahusay na hindi madala sa malalaking INDIRECT na mga talahanayan.

  • Paano gumawa ng dynamic na range na may auto-sizing
  • Pagsusuma sa isang range-window sa isang sheet na may function na OFFSET

 

Mag-iwan ng Sagot