(Download ตัวอย่างได้จาก www.ExcelExpertTraining.com/extreme/files/database/singlemodule.xls)
ตัวอย่างนี้ดัดแปลงมาจากตัวอย่างที่ใช้ในการอบรมหลักสูตรสุดยอดเคล็ดลับและลัดของ Excel จากเดิมซึ่งรวมตัวแปรของงบการเงินทั้งสาม case ไว้ติดกันในตารางเดียวกันในชีทเดียวกัน เปลี่ยนมาเป็นการแยกตัวแปรของแต่ละ case ไว้ในชีทต่างหากของมันเอง
โปรดสังเกตว่านอกเหนือจากตำแหน่งของตารางในชีท Case1, Case2, และ Case3 ต้องใช้ตำแหน่งเซลล์ตรงกันทั้งสามชีทคือใช้เซลล์ F3:F6 เก็บตัวเลขของยอดขายและต้นทุนแล้ว การตั้งชื่อชีทให้มีคำนำหน้าว่า Case เหมือนกันแล้วตามด้วยตัวเลข 1, 2, หรือ 3 ถือเป็นส่วนสำคัญที่จะช่วยให้สูตรที่ใช้ดึงข้อมูลจากชีทที่ต้องการสามารถทำได้ง่ายขึ้นด้วย ดังรูปต่อไปนี้ซึ่งเป็นชีทชื่อ SheetModule เป็นตารางคำนวณที่เลือกดึงข้อมูลจากชีทชื่อที่ต้องการมาคำนวณ
1. ประเด็นสำคัญคือตำแหน่งเซลล์ F3:F6 เป็นตำแหน่งเดียวกับข้อมูลที่แยกเก็บไว้ในชีท Case1, Case2, และ Case3
2. เซลล์ F2 เป็นเซลล์เดียวเท่านั้นที่มีการแก้ไขตัวเลข คุณสามารถบันทึกตัวเลข 1, 2, หรือ 3 ลงไปเพื่อแสดงถึงเลขที่ของ CaseNum ตาม case ที่ถูกแยกไว้ในชีทอื่น ดังนั้นเมื่อนำตัวเลขในเซลล์ F2 ไปต่อท้ายกับคำว่า Case โดยใช้สูตร =”Case”&$F$2 ย่อมได้ชื่อชีทที่ต้องการ (ตามภาพนี้ F2 มีเลข 2 บันทึกอยู่ ดังนั้นสูตร =”Case”&$F$2 จึงคืนค่าเป็นคำว่า Case2)
3. สูตรในเซลล์ F3:F6 คือ =INDIRECT("Case"&$F$2&"!"&ADDRESS(ROW(),COLUMN()))
3.1. สูตรส่วนตั้งแต่ "Case"&$F$2&"!" จะคืนค่าออกมาเป็นคำว่า Case2!
3.2. สูตรส่วนของ ADDRESS(ROW(),COLUMN()) คืนค่าออกมาเป็นตำแหน่งเซลล์ของเลขที่ row และเลขที่ column ของตำแหน่งเซลล์ที่มีสูตรนี้อยู่ เช่น ในเซลล์ F3 ส่งผลให้สูตร Row() มีค่าเป็น 3 และสูตร Column() มีค่าเป็น 6 เพราะ Column F เป็น Column ที่ 6 จึงส่งค่าไปยังสูตร ADDRESS(3,6) ให้คืนค่าเป็น $F$3
3.3. เมื่อนำผลลัพธ์คำว่า Case2! มาเชื่อมกับคำว่า $F$3 ด้วยสูตร "Case"&$F$2&"!"&ADDRESS(ROW(),COLUMN()) จึงได้ชื่อชีทกับตำแหน่งเซลล์ที่ต้องการออกมาเป็นคำว่า "Case2!$F$3"
3.4. สูตร Indirect จึงหาค่าจากชื่อชีทและตำแหน่งเซลล์ "Case2!$F$3" ได้ตัวเลข 200 ตามต้องการ
4. เมื่อหาค่าด้วยสูตร Indirect ในเซลล์ F3:F6 ได้แล้ว จึงส่งค่าต่อไปคำนวณในตารางคำนวณงบการเงินในพื้นที่ตารางด้านซ้ายสุด D3:D6 เพื่อใช้คำนวณหา Margin