
ก่อนจะอธิบายสูตร เท่าที่เห็นคือคำว่า Offset เขียนไม่ถูกต้องนะครับ จะต้องมีตัว s ในคำว่า Offset ด้วยครับ เมื่อแก้คำว่า Offset แล้วสูตรจะแสดงผลตามที่ต้องการครับ
จากสูตร =IF(ROWS($C$7:C7)>$F$4,"",offset(Database!$J$2,MATCH(Sheet1!$D$2,Database!$A$2:$A$100,0)-1+ROWS($C$7:C7)-1,0))
ฟังก์ชั่น Offset ผมเขียนอธิบายไว้ที่นี่ค่อนข้างละเอียด
http://snasui.blogspot.com/2009/03/offset.html ลองทำความเข้าใจดูครับ
สำหรับ Match, -1 และ Rows, ใช้เพื่อให้เกิดความยืดหยุ่นเมื่อมีการลากสูตรลงไปด้านล่างจะมีการปรับให้แสดงผลลัพธ์ในลำดับถัดไปตามต้องการครับโดย
Match เป็นการหาลำดับที่ของค่าเป้าหมายในช่วงข้อมูลที่ต้องการ การนำมาใช้ใน Offset หากให้ตรงกับส่วนประกอบที่สองของ offset จะต้องหักด้วย 1 ครับ ทั้งนี้เนื่องจากค่าแรกของ Match จะเริ่มด้วย 1 แต่ส่วนประกอบที่สองของ Offset จะเริ่มที่ 0 (สังเกตว่าสูตรที่ยกมาเราใช้ Match เป็นส่วนประกอบที่สองของ Offset)
Rows จะให้ผลลัพธ์เป็นจำนวนแถวซึ่งต้องเริ่มจาก 1 เสมอหากต้องนำมาใช้บวกกับ Match ซึ่งใช้เป็นส่วนประกอบที่สองของ Offset ก็จะต้องหักออกด้วย 1 เช่นกัน เพื่อให้เริ่มด้วย 0
ลองค่อย ๆ ทำความเข้าใจดูครับ ติดขัดตรงไหนถามมาได้เต็มที่ครับ
