Page 1 of 1
สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Mon Feb 02, 2015 12:22 pm
by Arisa
คีย์รายละเอียดที่หน้า ข้อมูล แล้วให้เด้งไปหน้า ตาราง เลยค่ะ ทำสูตรอย่างไรค่ะ (2 เงื่อนไข)
- อยากให้สูตรของแต่ละเซลล์ ขึ้นอยู่กับ วันที่(วันที่ใช้งาน)และุห้องสัมมนา
- ถ้ามีการใช้งานหลายวัน สามารถทำให้แสดงในหน้า ตาราง ได้ไหมค่ะ
ตัวอย่าง
อริสา ใช้งานวันที่ 1 ก.พ.58 ห้องสัมมนา SPD1E (กรอกรายละเอียดในหน้า ข้อมูล แบบนี้) แล้วอยากให้เด้งไปหน้า ตารางเลยค่ะ
SPD.xlsx
Re: สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Mon Feb 02, 2015 7:41 pm
by snasui

สามารถใช้สูตรที่ชีท ตาราง ตามด้านล่างครับ
- เซลล์ H1 คีย์สูตร
=SUMPRODUCT(1/COUNTIF(ข้อมูล!F2:F4,ข้อมูล!F2:F4))
Enter
- เซลล์ A2 คีย์สูตร
=IF(B2<>"เบอร์","",INDEX(ข้อมูล!$F$2:$F$4,SMALL(IF(FREQUENCY(MATCH(ข้อมูล!$F$2:$F$4,ข้อมูล!$F$2:$F$4,0),ROW(ข้อมูล!$F$2:$F$4)-ROW(ข้อมูล!$F$2)+1),ROW(ข้อมูล!$F$2:$F$4)-ROW(ข้อมูล!$F$2)+1),COUNTIF(B$2:B2,"เบอร์"))))
Ctrl+Shift+Enter > Copy ลงด้านล่าง
- เซลล์ B2 คีย์สูตร
=IF(ROWS(B$2:B2)>$H$1*5,"",(INDEX(ข้อมูล!$A$1:$E$1,MOD((ROWS(B$2:B2)-1),5)+1)))
Enter > Copy ลงด้านล่าง
- เซลล์ C2 คีย์สูตร
=IFERROR(INDEX(ข้อมูล!$A$2:$E$4,SMALL(IF(INDEX(ตาราง!$A$2:$A6,MATCH(1,1/($A$2:$A6<>""),0))=ข้อมูล!$F$2:$F$4,IF(ข้อมูล!$G$2:$G$4=C$1,ROW(ข้อมูล!$F$2:$F$4)-ROW(ข้อมูล!$F$2)+1)),1),MATCH($B2,ข้อมูล!$A$1:$E$1,0)),"")
Ctrl+Shift+Enter > Copy ไปด้านขวาและลงด้านล่าง
!
| Note: Ctrl+Shift+Enter หมายถึง
- กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
- กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
- หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
- การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง
|
Re: สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Wed Feb 04, 2015 10:04 am
by Arisa
ขอบคุณมากค่ะ ที่ให้คำตอบที่เป็นประโยชน์มาก ทำให้ทำงานสะดวกมากยิ่งขึ้น
ขอถามอีกสองกรณีนะค่ะ
1.อริสา ใช้งานวันที่ 1-3 ก.พ.58 ห้องสัมมนา SPD1E (เป็นกรณีที่มีการใช้งานหลายวัน)
2.อริสา ใช้งานวันที่ 1-8 ก.พ.58 ห้องสัมมนา SPD1E,SPD2E,SPD3E (เป็นกรณีที่มีการใช้งานหลายวันและหลายห้อง)
กรอกรายละเอียดในหน้า ข้อมูล แบบ 2 กรณีนี้ แล้วอยากให้เด้งไปหน้า ตารางเลยค่ะ ทำอย่างไรค่ะ
SPD.xlsx
Re: สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Wed Feb 04, 2015 5:56 pm
by snasui

ช่วยแนบไฟล์โดยมีสูตรตามด้านบนครบทุกตำแหน่งมาใหม่ คือมีสูตรครบทั้ง 4 สูตรตามด้านบน
เซลล์ไหนไม่ได้คำตอบควรแจ้งที่ติดปัญหามาด้วย ไม่ควรลบสูตรออกแล้วเปลี่ยนเป็นค่าคงที่ จะได้ตอบต่อไปจากนั้นครับ
Re: สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Thu Feb 05, 2015 12:30 pm
by Arisa
แนบไฟล์ให้ใหม่แล้วนะค่ะ แจงรายละเอียดไว้ในไฟล์ excel แล้วค่ะ ช่วยแนะนำด้วยนะค่ะ
ใส่สูตรตามที่แนะนำไว้ให้แล้วค่ะ (อาจจะมีการดัดแปลงเล็กน้อย)
ข้อมูลการใช้งานห้องสัมมนา ประจำปี 2558.xlsx
Re: สูตร 2 เงื่อนไข ใช้ INDEX MATCH ไม่ได้ผล ทำอย่างไรค่ะ
Posted: Thu Feb 05, 2015 7:10 pm
by snasui
- การแสดงวันที่แบบนี้ "2-3 ก.พ.58" ไม่สามารถใช้ในงานได้ค่ะ
ต้องเรียงตามวันที่ค่ะ เช่น
1-ก.พ.-58
2-ก.พ.-58 เรียงแบบนี้ค่ะ
3-ก.พ.-58
- ถ้าเกิดมีการใช้งาน ระหว่างวันที่ 2-3 ก.พ.58
จะต้องมีรายละเอียดแสดงอยู่ที่ช่องสีฟ้าค่ะ จึงจะใช้ในงานได้ค่ะ

เมื่อใช้งานไม่ได้ก็ต้องบันทึกข้อมูลต้นทางให้แยกเป็นรายบรรทัดจึงจะดึงข้อมูลมาแสดงยังปลายทางได้ ซึ่งข้อมูลปลายทางก็จะกลายเป็นรายบรรทัดเช่นกัน หากไม่เช่นนั้นต้องเขียนด้วย VBA ให้เขียนมาเองก่อน ติดตรงไหนค่อยถามกันต่อครับ