Page 1 of 1
การดึงข้อมูลข้ามไฟล์ แบบมีเงือนไข
Posted: Thu Jan 25, 2018 2:28 pm
by Worakan
ผมต้องการกรอกข้อมูลการประกวดราคาในไฟล์ชื่อ "รายการประมูล" ตามแนบ เมื่อกรอกข้อมูลแล้วจะนำเอกสารเสนอเจ้านาย เจ้านายก็จะสั่งว่า ให้ซื้อแบบประกวดราคาในนามบริษัทใด โดยผมต้องการว่า หากเจ้านายสั่งให้ซื้อแบบในนาม บางกอกไพบูลย์ไพพ์ ให้ข้อมูลที่ต้องการไปแสดงในไฟล์งาน ชื่อ "รายการประมูล-บางกอก" เบื้องต้น ผมได้ลองใช้สูตร =IFERROR(INDEX([รายการงานประมูล.xlsx]รายการประมูล!$A$6:$L$300,SMALL(IF([รายการงานประมูล.xlsx]รายการประมูล!$K$6:$K$300=$G$3,ROW([รายการงานประมูล.xlsx]รายการประมูล!$K$6:$K$300)-ROW([รายการงานประมูล.xlsx]รายการประมูล!$B$6)+1),ROWS($B$6:$B6)),CHOOSE(COLUMNS($B$6:B$6),1,3,4,5,6,7,8,9,10,12,13)),"")
ผลที่ได้คือ
1.ในColum B "วันที่ TOR" พ.ศ. ผิด
2.ในColum N "กำหนดส่งตัวอย่าง" ไม่แสดงข้อมูล
รบกวนผู้รู้แนะนำและแก้ไขด้วยครับ ขอบคุณครับ
Re: การดึงข้อมูลข้ามไฟล์ แบบมีเงือนไข
Posted: Thu Jan 25, 2018 3:29 pm
by puriwutpokin
ปรับเป็นที่ B6=IFERROR(INDEX([รายการงานประมูล.xlsx]รายการประมูล!$A$6:$L$300,SMALL(IF([รายการงานประมูล.xlsx]รายการประมูล!$K$6:$K$300=$G$3,ROW([รายการงานประมูล.xlsx]รายการประมูล!$K$6:$K$300)-ROW([รายการงานประมูล.xlsx]รายการประมูล!$B$6)+1),ROWS($B$6:$B6)),CHOOSE(COLUMNS($B$6:B$6),2,3,4,5,6,7,8,9,10,"","","",12)),"") กด Ctrl+Shift+Enter ลากไปยังเซลที่เกี่ยวข้องครับ
Re: การดึงข้อมูลข้ามไฟล์ แบบมีเงือนไข
Posted: Sat Jan 27, 2018 12:47 am
by Worakan
ขอบคุณมากครับ สามารถแก้ไขได้แล้วครับ
แต่ผมมีข้อส่งสัยอีกว่า หากผมมีการเพิ่ม Colum ในไฟล์ชื่อ "รายการประมูล" อีก ทำไม Colum ที่เพิ่มแสดงในไฟล์งาน ชื่อ "รายการประมูล-บางกอก" ไม่แสดง ผมอยากขอคำแนะนำ
สูตรCHOOSE(COLUMNS($B$6:B$6),2,3,4,5,6,7,8,9,10,"","","",12)),"")
ว่า หากมีการเพิ่มหรือลดColum ในไฟล์งาน จะต้องแก้ไขสตรดังกล่าวตลอดด้วยหรือไหม ถ้าใช้ ในกรณีที่เพิ่ม จะเพิ่มสูตรในลักษณะใด๋ และลดจะเขียนสูตรในลักษณะใด ขอคำแนะนำด้วยครับ
Re: การดึงข้อมูลข้ามไฟล์ แบบมีเงือนไข
Posted: Sat Jan 27, 2018 8:27 am
by puriwutpokin
ต้องดูสูตรสูตรCHOOSE(COLUMNS($B$6:B$6),2,3,4,5,6,7,8,9,10,"","","",12)),"") ซึ่งตัวเลข 2,3,4,5,6,7,8,9,10,"","","",12 จะสัมพันธ์กันกับคอลัมน์ ที่จะให้แสดงข้อมูลจากต้นทางถ้าต้นทางมีข้อที่จะเอามาแสดงก็ต้องดูว่าข้อมูลต้นทางอยู่คอลัมน์ที่เท่าไรครับแล้วปรับตัวเลขดังกล่าวเพิ่มหรือเปลี่ยนเลขนั้นๆครับ
ไม่นั้นถ้าไม่อยากใช้สูตรนี้ก็ต้องทำให้ชื่อหัวคอลัมน์ชื่อเหมือนกันทุกตัวอักษรทั้งต้นทางและปลายทางจะได้ดึงจากชื่อหัวคอลัมน์ได้โดยตรงครับ