Page 1 of 1

กดตารางแล้วให้มี popup sheet คล้ายๆ pivot ทำยังไงครับ

Posted: Sun Aug 04, 2013 12:07 pm
by tanyawat
ตัวอย่างเช่น หน้ารายงาน มีกลุ่มเงินเดือนที่แทนค่า ด้วยกลุ่ม A1 อยากให้กดที่กลุ่ม A1(หรือเซล C8) แล้วมี popup sheet ข้อมูลต่างๆของพนักงานกลุ่มนั้นที่อยู่ในหน้า sheet1 ที่แทนค่ากลุ่มเงินเดือนด้วย A1 ขึ้นมาแสดงนะครับ

Re: กดตารางแล้วให้มี popup sheet คล้ายๆ pivot ทำยังไงครับ

Posted: Sun Aug 04, 2013 2:27 pm
by joo
:D ต้องการให้แสดงคำตอบในฟอร์มหรือในซีทครับถ้าหากต้องการแสดงในฟอร์มต้องอาศัย VBA เข้ามาช่วยครับซึ่งจำเป็นต้องเขียนมาเองก่อนตามกฎข้อ 5 ด้านบนครับ
หากต้องการแสดงเป็นตารางอยู่ในซีทสามารถทำได้ดังนี้ครับ
ที่ A2 ถึง N2 คีย์รายการต่างๆ เพื่อเป็นหัวคอลัมน์
ที่ A3 ทำเป็นรายการให้เลือกของกลุ่มเงินเดือนต่างๆ
ที่ B3 คีย์ =IF(ROWS(B$3:B3)>COUNTIF(sheet1!$E$2:$E$49,$A$3),"",ROWS(B$3:B3)) Enter > Copy ลงล่าง
ที่ C3 คีย์ =IF(N($B3),INDEX(INDEX(sheet1!$A$2:$L$49,0,MATCH(C$2,sheet1!$A$1:$L$1,0)),SMALL(IF(sheet1!$E$2:$E$49=$A$3,ROW(sheet1!$E$2:$E$49)-ROW(sheet1!$E$2)+1),$B3)),"") กดแป้น Ctrl+Shift+Enter พร้อมกัน จากนั้นก็คัดลอกไปทางขวาและลงล่าง ดูตัวอย่างตามไฟล์แนบครับ

Re: กดตารางแล้วให้มี popup sheet คล้ายๆ pivot ทำยังไงครับ

Posted: Sun Aug 04, 2013 8:59 pm
by tanyawat
joo wrote::D ต้องการให้แสดงคำตอบในฟอร์มหรือในซีทครับถ้าหากต้องการแสดงในฟอร์มต้องอาศัย VBA เข้ามาช่วยครับซึ่งจำเป็นต้องเขียนมาเองก่อนตามกฎข้อ 5 ด้านบนครับ
หากต้องการแสดงเป็นตารางอยู่ในซีทสามารถทำได้ดังนี้ครับ
ที่ A2 ถึง N2 คีย์รายการต่างๆ เพื่อเป็นหัวคอลัมน์
ที่ A3 ทำเป็นรายการให้เลือกของกลุ่มเงินเดือนต่างๆ
ที่ B3 คีย์ =IF(ROWS(B$3:B3)>COUNTIF(sheet1!$E$2:$E$49,$A$3),"",ROWS(B$3:B3)) Enter > Copy ลงล่าง
ที่ C3 คีย์ =IF(N($B3),INDEX(INDEX(sheet1!$A$2:$L$49,0,MATCH(C$2,sheet1!$A$1:$L$1,0)),SMALL(IF(sheet1!$E$2:$E$49=$A$3,ROW(sheet1!$E$2:$E$49)-ROW(sheet1!$E$2)+1),$B3)),"") กดแป้น Ctrl+Shift+Enter พร้อมกัน จากนั้นก็คัดลอกไปทางขวาและลงล่าง ดูตัวอย่างตามไฟล์แนบครับ
ต้องการคำตอบในฟอร์มครับ ตอนแรกเข้าใจว่ามีคำสั่งที่สามารถทำได้แต่เรายังไม่รู้ แต่ถ้าต้อง VBA นี่ ไม่ไหวอ่าครับไม่เคยศึกษาเลย :lol: คงต้องทำแบบลิ้งค์ธรรมดาเอา แต่ยังไงก็ขอบคุณนะครับสำหรับตัวอย่าง :D