Page 1 of 1
INDEX ข้าม Workbooks
Posted: Wed Oct 07, 2015 5:12 pm
by piches
=COUNTIF('[รับสินค้าคืน.xlsx]Sheet1'!$A:$A,G7)
={IF(ROWS($B$19:B19)>$A$5,"",INDEX([รับสินค้าคืน.xlsx]Sheet1!$J:$J,SMALL(IF([รับสินค้าคืน.xlsx]Sheet1!$A:$A=$G$7,ROW([รับสินค้าคืน.xlsx]Sheet1!$A:$A)-ROW([รับสินค้าคืน.xlsx]Sheet1!$A:$A)+2),ROWS($B$19:B19))))}
ต้องการดึงรายการตามเลขที่บิลครับ ถ้าปิด ไฟล์ รับสินค้าคืน.xlsx จะ error #value!
ที่ A$5 ครับต้องแก้ไขยังไงดีครับ
Re: INDEX ข้าม Workbooks
Posted: Wed Oct 07, 2015 5:19 pm
by piches
ไฟล์ตัวอย่างครับ
Re: INDEX ข้าม Workbooks
Posted: Wed Oct 07, 2015 6:01 pm
by DhitiBank
ไม่แน่ใจว่าใช่อย่างที่ต้องการหรือเปล่า ลองครอบสูตร Countif ด้วย Iferror ดูครับ เช่น
=iferror(COUNTIF('[รับสินค้าคืน.xlsx]Sheet1'!$A:$A,G7),0)
หรือ
=iferror(COUNTIF('[รับสินค้าคืน.xlsx]Sheet1'!$A:$A,G7),"")
สูตรบน หาก error จะแสดงเลข 0 สูตรล่างจะแสดงค่าว่างครับ
Re: INDEX ข้าม Workbooks
Posted: Thu Oct 08, 2015 8:45 am
by piches
ถ้าเปิดไฟล์ รับสินค้าคืน.xlsx ไว้สูตรจะทำงานได้ตามปกติ แต่ถ้าปิด สูตรจะ error ครับ
Re: INDEX ข้าม Workbooks
Posted: Thu Oct 08, 2015 11:14 am
by DhitiBank
piches wrote:ถ้าเปิดไฟล์ รับสินค้าคืน.xlsx ไว้สูตรจะทำงานได้ตามปกติ แต่ถ้าปิด สูตรจะ error ครับ
ลองเอา Iferror ช่วยดูตามสูตรด้านบนหรือยังครับ ที่ผมลองมันจะไม่ error แล้วแต่ 2 สูตรนั้นจะให้ผลต่างกัน
--- หากเอาสูตรแรก คือ หาก error ให้ใส่ค่า 0 รายการในตารางด้านล่างจะไม่แสดง
--- หากเอาสูตร 2 เวลา error จะแสดงค่าว่าง รายการในตารางด้านล่างยังแสดงอยู่ครับ
Re: INDEX ข้าม Workbooks
Posted: Thu Oct 08, 2015 12:17 pm
by snasui

Countif ไม่สามารถใช้งานข้ามไฟล์กรณีไฟล์ต้นทางปิดอยู่ได้ ให้เปลียนเป็น Sumproduct แทน
เช่นด้านล่างครับ
=Sumproduct(--('[รับสินค้าคืน.xlsx]Sheet1'!$A1:$A1000=G7))
Re: INDEX ข้าม Workbooks
Posted: Thu Oct 08, 2015 1:13 pm
by DhitiBank

ที่แท้ให้ดึงข้อมูลแม้ไฟล์จะปิดอยู่นี่เอง ขอบคุณครับอาจารย์
2-3 วันมานี่เจอแต่อะไรใหม่ๆ ที่ไม่เคยรู้เลย
Re: INDEX ข้าม Workbooks
Posted: Thu Oct 08, 2015 4:40 pm
by piches
ได้แล้วครับอาจารย์ ขอบคุณครับอาจารย์