Page 1 of 1
การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Mon Nov 10, 2014 11:33 pm
by visarut
รบกวนสอบถามสูตรจากเอกสารแนบครับ
คอลัมป์ C ต้องการให้แสดง "A" ถ้าคอลัมป์ B = 1แถว
และคอลัมป์ C ต้องการให้แสดง "B" ถ้าคอลัมป์ B > 1แถว
ที่คอลัป์ C ต้องเขียนสูตรอย่างไรครับ
Re: การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Tue Nov 11, 2014 2:03 pm
by snasui
ตามด้านล่างครับ
C2 คีย์สูตร
=IF(ISNUMBER(FIND(CHAR(10),B2)),"B","A")
Enter > Copy ลงด้านล่าง
Re: การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Tue Nov 11, 2014 3:37 pm
by visarut
snasui wrote: ตามด้านล่างครับ
C2 คีย์สูตร
=IF(ISNUMBER(FIND(CHAR(10),B2)),"B","A")
Enter > Copy ลงด้านล่าง
ขอบคุณครับคุณคนควน
จากสูตรที่คุณคนควน สร้างขึ้นทำให้ ผมได้เรียนรู้การใช้คำสั่ง ISNUMBER,FIND และ ได้รู้ว่า คำสั่ง Alt+Enter = CHAR(10)
จากลิงค์ด้านล่างนี้
http://snasui.blogspot.com/2008/11/blog-post_6472.html
ขอบคุณมากครับ
รบกวนสอบถามเพิ่มเติมครับ ตามเอกสารแนบ ชี้ท ตย.2
ข้อมูลที่ผมได้มาเป็นการดึงข้อมูลจากโปรแกรมบริษัท เป็น excel ซึ่งใน 1 ช่อง มีข้อมูลหลายแถว
สามารถใช้คำสั่งอย่างไรได้บ้างครับ เพื่อให้ข้อมูลแยกแถวออกมา เป็น 1 ช่อง ใน 1 แถว
Re: การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Tue Nov 11, 2014 4:23 pm
by snasui
ดูตัวอย่างสูตรตามไฟล์แนบ โดยมีลำดับการเขียนสูตรที่เซลล์เริ่มต้นดังนี้
- L5
- L7
- M5
- A11
- E11
จากนั้น Copy เซลล์เหล่านี้ไปยังเซลล์ที่เกียวข้อง สังเกตว่าสูตรเดียวกันจะใช้สีเดียวกัน
Re: การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Wed Nov 12, 2014 10:27 am
by visarut
snasui wrote: ดูตัวอย่างสูตรตามไฟล์แนบ โดยมีลำดับการเขียนสูตรที่เซลล์เริ่มต้นดังนี้
- L5
- L7
- M5
- A11
- E11
จากนั้น Copy เซลล์เหล่านี้ไปยังเซลล์ที่เกียวข้อง สังเกตว่าสูตรเดียวกันจะใช้สีเดียวกัน
ขอบคุณครับ
ผมลองใช้สูตรดู พบข้อมูลบางส่วนไม่แสดงและบางส่วนแสดงไม่ครบ(ส่วนที่เป็นช่องสีเขียว) ต้องแก้ไขอย่างไรบ้างครับ
ผมขอนำสูตรไปใช้ก่อนนะครับ หลังจากเสร็จงานจะขอกลับมาทำความเข้าใจความหมายของสูตรอีกครั้งครับ
Re: การใส่สูตรโดยอ้างอิงจากคอลัมป์
Posted: Wed Nov 12, 2014 4:37 pm
by snasui
ตัวอย่างการปรับสูตรที่ O131 ตามด้านล่างครับ
Code: Select all
=IF(ROWS(E$131:E131)>$L$7,"",TRIM(MID(SUBSTITUTE(LOOKUP(ROWS(E$131:E131),$AN$2:$AN$126,O$2:O$126),CHAR(10),REPT(" ",100)),100*(COUNTIF(D$131:$D131,$D131)-1)+1,100)))
ตรง Countif คือการนับแบบมีเงื่อนไข จะเป็นตัวช่วยแยกว่าข้อมูลใดมีกี่บรรทัด หากนับวันที่ในคอลัมน์ A จะไม่สัมพันธ์กับบรรทัดของข้อมูลจริง ผมเปลี่ยนมาใช้คอลัมน์ D แทน ซึ่งต้องทราบเองนะครับว่าเราควรจะใช้คอลัมน์ใดเป็นตัวแทน สูตรนี้เป็นแค่ตัวอย่างเท่านั้นครับ