Page 1 of 1

ต้องการชื่อ cell ของตำแหน่งที่ต้องการ

Posted: Wed Feb 09, 2011 11:55 pm
by piairz
ตามไฟล์ที่ได้แนบมานะคะ

ไฟล์ที่หนึ่ง :
หาชื่อ cell ของตำแหน่ง.xls
ไฟล์ที่สอง :
ถาม-หาชื่อ cell ของตำแหน่ง(2).xls
ไฟล์ที่หนึ่ง รบกวนขอความช่วยเหลือ 2 ประเด็นค่ะ
ประเด็นที่หนึ่ง : ต้องการให้ช่อง Q4 ปรากฏชื่อ cell ตามตำแหน่งของเครื่องหมาย X แรกโดยที่เราสามารถนำไปใส่ช่องไหนก็ได้ และ Q5 ก็เช่นกัน
ประเด็นที่สอง : ต้องการ shift จากตำแหน่งจริงๆ(ที่กากบาทในกรอบ)ในตารางด้านบน(สีส้ม คือ J7 และ K5)
ให้แสดงชื่อ cell ตำแหน่งที่อยู่ในตารางด้านบน(สีแดง) จากรูปจะเห็นว่า มัน shift กันอยู่ 1 ช่อง
โดยที่ให้เงื่อนไขว่า ...
ถ้าอยู่ด้านซ้ายของกรอบ ให้แสดงตำแหน่งซ้าย
ถ้าอยู่ด้านขวาของกรอบ ให้แสดงตำแหน่งขวา

ส่วนไฟล์ที่สอง ปัญหาเดิมค่ะ แต่ใหญ่ขึ้นสักนิด ซับซ้อนมากขึ้น

รบกวนขอสูตรจากท่านผู้รู้หน่อยค่ะ ขอบคุณค่ะ

Re: ต้องการชื่อ cell ของตำแหน่งที่ต้องการ

Posted: Thu Feb 10, 2011 10:33 am
by snasui
:D เพื่อเป็นกรณีศึกษาผมส่งไฟล์แรกกลับมาให้ด้วย เพราะคิดว่าจริง ๆ แล้วต้องการคำตอบตามไฟล์ที่สองมากกว่า การทำเช่นนั้นปกติจะใช้ VBA เข้ามาช่วย การใช้สูตรจะยากมาก และสูตรที่ผมเขียนมาให้นี้ ต้องใช้ Add-ins Morefunc เข้ามาช่วย ได้แก่ฟังก์ชั่น Array.Join สำหรับ Add-ins ดังกล่าวดาวน์โหลดได้ที่ http://www.snasui.com/viewtopic.php?f=3&t=9 ครับ

หลักการทำไฟล์ที่ 2 คือ

1. หาตำแหน่งเซลล์ออกมาให้ได้ก่อน สูตรที่ C15:F15 จะต่างกันไปเพื่อไม่ให้ซับซ้อนมาก เขียนเสร็จแล้ว Copy ลงด้านล่างและ Copy ทั้งชุดที่ได้ไปด้านขวา
2. นำเซลล์มาเรียงตามชุดที่ต้องการให้ไปแสดงผลที่ C21:D115
3. เขียนสูตรเพื่อแสดงผลที่ AC3:AD11

ดูไฟล์แนบประกอบครับ

Re: ต้องการชื่อ cell ของตำแหน่งที่ต้องการ

Posted: Thu Feb 10, 2011 5:36 pm
by snasui
:tt: อ้างอิงช่วงเซลล์ผิดไปแถวนึงครับ

ที่ C21 คีย์สูตรใหม่ตามด้านล่างครับ

=LOOKUP(CHAR(255),CHOOSE({1,2},"",INDEX(ARRAY.JOIN($C$15:$C$20,$F$15:$G$20,$J$15:$K$20,$N$15:$O$20,$R$15:$S$20,$V$15:$W$20,$Z$15:$Z$20),ROWS(C$21:C21))))

Enter > Copy ลงด้านล่าง