
Formula generik
=INDIRECT(sheet&"!"&CELL("address",A1))
Ringkasan
Untuk meningkatkan rujukan yang dibuat sebagai teks di dalam fungsi LANGSUNG, anda dapat menggunakan fungsi CELL. Dalam contoh yang ditunjukkan, formula dalam D5 adalah:
=INDIRECT($B$5&"!"&CELL("address",A1))
Yang bertambah sebagai formula disalin ke bawah.
Penjelasan
Pertimbangkan rujukan dinamik mudah untuk Helaian2 menggunakan LANGSUNG dalam formula seperti ini:
=INDIRECT($B$5&"!"&"A1"))
Sekiranya kita menukar nama helaian di B5 menjadi nama lain (sah), TIDAK LANGSUNG akan mengembalikan rujukan ke A1 dalam helaian baru.
Namun, jika kita menyalin formula ini di lajur, rujukan ke A1 tidak akan berubah, kerana "A1" dikodekan sebagai teks.
Untuk menyelesaikan masalah ini, kami menggunakan fungsi CELL untuk menghasilkan rujukan teks dari rujukan sel biasa:
CELL("address",A1)
Dengan "alamat" sebagai argumen pertama, dan A1 sebagai argumen kedua, fungsi CELL mengembalikan rentetan seperti "$ A $ 1". Oleh kerana A1 adalah rujukan sel biasa, ia akan meningkat secara normal kerana formula disalin ke bawah lajur. Hasilnya di D5: D9 adalah rangkaian formula seperti ini:
=INDIRECT("Sheet2!$A$1") =INDIRECT("Sheet2!$A$2") =INDIRECT("Sheet2!$A$3") =INDIRECT("Sheet2!$A$4") =INDIRECT("Sheet2!$A$5")
Dalam setiap kes, LANGSUNG menyelesaikan setiap rentetan teks ke rujukan dan Excel mengembalikan nilai pada sel yang diberikan dalam Helaian2.
Catatan: kedua-dua INDIRECT dan CELL adalah fungsi yang tidak menentu dan dikira semula dengan setiap perubahan lembaran kerja. Ini boleh menyebabkan masalah prestasi pada lembaran kerja yang lebih kompleks.