ฟังก์ชันทางอ้อมของ Excel เพื่อตั้งชื่อชีต


0

ฉันกำลังพยายามให้แผ่นงานของสมุดงานภายนอกอัปเดตเป็นเซลล์อ้างอิงในสมุดงานปัจจุบัน

นี่คือรหัสของฉันจนถึงตอนนี้

=INDEX([Test.xlsx]indirect("I8")!$A$3:$B$7, MATCH(I8,[Test.xlsx]indirect("i8")!$A$3:$A$7,0),2)

โดยที่ Test เป็นหนังสือภายนอกและ I8 อยู่ในหนังสือและแผ่นงานปัจจุบัน

ความช่วยเหลือเกี่ยวกับสิ่งนี้จะได้รับการชื่นชมอย่างมาก

คำตอบ:


0

ทางอ้อมจำเป็นต้องมีส่วนร่วมทั้งหมด:

=INDEX(INDIRECT("[Test.xlsx]'" & I8 & "'!$A$3:$B$7"), MATCH(I8,INDIRECT("[Test.xlsx]'" & I8 & "'!$A$3:$A$7"),0),2)

ดังนั้นตอนนี้ฉันได้รับข้อผิดพลาดของการอ้างอิง ฉันต้องระบุว่า I8 อยู่ในสมุดงาน / แผ่นงานปัจจุบันหรือไม่
user587822

@ user587822 I8 หมายถึงเซลล์แผ่นงาน I8 ที่ใช้งานอยู่ ในเซลล์นั้นควรเป็นชื่อของแผ่นงานที่คุณต้องการค้นหาในสมุดงาน "Test.xlsx" ดังนั้นแผ่นงานนั้นมีชื่อแตกต่างกันใน I8 มากกว่าในสมุดงานหรือ "Test.xlsx" ชื่อผิดและ / หรือปิด
Scott Craner

@ user587822 ใช้งานได้หรือไม่ ถ้าเป็นเช่นนั้นโปรดทำเครื่องหมายว่าถูกต้องโดยคลิกที่เครื่องหมายถูกโดยคำตอบ มันเป็นสิ่งเดียวที่คุณสามารถทำได้และมันจะทำเครื่องหมายคำถามนี้ว่าเป็นคำตอบ
Scott Craner

จะมีเส้นทางไปยังสมุดงานแทนการตั้งชื่อหรือไม่
user587822

นั่นคือคำถามใหม่ แต่ดูที่นี่ หากคุณไม่สามารถใช้งานได้ให้กลับมาถามคำถามใหม่ คำถามดั้งเดิมเกี่ยวกับวิธีใช้ INDIRECT ได้รับคำตอบแล้ว
Scott Craner
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.