Page 1 of 1
ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อVlook
Posted: Thu Nov 01, 2012 11:24 am
by itsadaw.
เรียน สอบถามอาจารย์
ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อ Vlook ครับ
ใน เชลล์ C 6987 มี ข้อมูล 2 ชุด Merge อยู่ครับ
ซึ่งผมจะใช้ Vlook จากฐานข้อมูลอื่นมาเทียบ แต่ ติดปัญหาเชลล์ที่ Merge นี้
ต้องทำอย่างไรบ้างครับ ต้องการลดเวลาการทำข้อมูลที่Mergeใหม่ ครับ
หรือท่านใดมีวิธีอื่นบ้างครับ
ขอบคุณครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 11:46 am
by bank9597
itsadaw. wrote:เรียน สอบถามอาจารย์
ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อ Vlook ครับ
ใน เชลล์ C 6987 มี ข้อมูล 2 ชุด Merge อยู่ครับ
ซึ่งผมจะใช้ Vlook จากฐานข้อมูลอื่นมาเทียบ แต่ ติดปัญหาเชลล์ที่ Merge นี้
ต้องทำอย่างไรบ้างครับ ต้องการลดเวลาการทำข้อมูลที่Mergeใหม่ ครับ
หรือท่านใดมีวิธีอื่นบ้างครับ
ขอบคุณครับ
รบกวนอธิบายเงื่อนไขอีกนิดครับ ว่าให้ Lookup จะเซลล์ไหนไปที่ไหน ชีทใดบ้าง เท่าที่ดู ผมยังไม่เห็นเซลล์ที่มีการ Merge เลยครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 12:06 pm
by itsadaw.
แนบข้อมูลเพิ่มเพื่อความเข้าใจครับ
ทางผมต้องการ Vlook ใน Sheetที่ 4 ช้อง A4 กับ
Sheetที่ 1 ช่อง C687 ครับ
แต่พอดีว่า ช่องนี้ มีข้อมูล 2 ตัวในบรรทัด 687 ครับ
จะสามารถทำ Vlook ได้ไหมครับ
ขอบคุณครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 12:26 pm
by bank9597
itsadaw. wrote:แนบข้อมูลเพิ่มเพื่อความเข้าใจครับ
ทางผมต้องการ Vlook ใน Sheetที่ 4 ช้อง A4 กับ
Sheetที่ 1 ช่อง C687 ครับ
แต่พอดีว่า ช่องนี้ มีข้อมูล 2 ตัวในบรรทัด 687 ครับ
จะสามารถทำ Vlook ได้ไหมครับ
ขอบคุณครับ

หากเป็นผม ไม่สามารถทำได้ครับ เนื่องจากว่า Vlookup จะ lookup ข้อมูลเซลล์ต่อเซลล์ เว้นแต่จะมีการ merge ไว้ เราสามารถใช้สูตรอื่นเข้ามาช่วยได้
ในกรณีที่ใน 1 เซลล์ มี 2 ชุดข้อมูลนั้น ผมไม่สามารถใช้สูตร Vlookup ให้ได้ครับ เว้นแต่จะเลือกเอาข้อมูลชุดใดชุดหนึ่งเท่านั้น เช่น
ที่เซลล์ M687 คีย์ =VLOOKUP(LEFT(C687,10),Sheet4!$A$4:$D$367,2,FALSE) คัดลอกลงมา
ส่วนอีกวิธีคือ ต้องแยกชุดข้อมูลออกมาอยู่คนละเซลล์อย่างชัดเจนครับ
รอดูท่านอื่นเข้ามาเสริมอีกทีครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 1:02 pm
by itsadaw.
ใน 1 เชลล์ มี 2 ชุดข้อมูล น่าจะต้องแยกชุดข้อมูลออกมาทำต่างหาก จึงสามารถทำ Vlook ได้
เหมือนตามที่คุณแบงค์แจ้งนะครับ
หากท่านอื่นมีความเห็นก็ยินดีครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 1:31 pm
by bank9597
ลองแยกชุดข้อมูลออกมาครับ แล้วค่อยใช้สูตรเอาภายหลัง
ตามตัวอย่างใน sheet1 ครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 1:57 pm
by tupthai
อาจใช้ COUNTIF ช่วยครับ เช่น
=COUNTIF(Sheet1!$C$111:$C$777,"*"&Sheet4!A4&"*")
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 2:02 pm
by itsadaw.
การแยกชุดข้อมูลตามใน Sheet มี เทคนิค อะไรบ้างไหมครับที่ให้แยกได้เร็วขึ้น ครับ
หรือจำเป็นต้องคีย์มือ เองเลยครับ
ถ้ามีรบกวนด้วยครับ คุณแบงค์ ขอบคุณครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 3:19 pm
by bank9597
ขั้นตอนเยอะ ลองทำตามดูครับ
ที่ M687 คีย์=LEFT(C687,10)
ที่ N687 คีย์=TRIM(SUBSTITUTE(C687,M687,""))
ที่ O687 คีย์=D687
ที่ P687 คีย์=E687
คลุมทึบ M687:P687 แล้วคัดลอกสูตรลงมาพร้อมกัน
จากนั้นคลุมทึบ M687:P777 แล้ว กด Ctrl+C จากนั้นคลิ๊กที่ M687 แล้วเลือก Paste > Paste Special > Value
จากนั้นคัดลอกข้อมูล O687:P777 แล้วคัดลอกไปวางที่ Q687
ขั้นตอนนี้เราจะได้ชุดข้อมูลครบแล้ว
ขั้นตอนต่อไปนี้จะทำการจัดเรียงข้อมูล
สร้างชีทใหม่ 1 ชีท
คัดลอกข้อมูลใน Sheet1 เซลล์ M687:R777
ที่ Sheet2 คลิ๊กที่ A2 แล้วกด Ctrl+V
ที่ G2 คีย์ 1 ที่G3 คีย์ 3 แล้วคลุมทึบ G2:G3 จากนั้นลากลงมาสุดข้อมูล จะได้เลข 1,3,5,7,.....181
ที่ G92 คีย์ 2 ที่G93 คีย์ 4 แล้วคลุมทึบ G92:G93 จากนั้นลากลงมาจนถึงลำดับ 180 จะได้เลข 2,4,6,8,.....180
จากนั้นคลุมทึบ A2:G182 แล้วไปที่แท็บ Data เลือก Sort เลือกคอลัมน์ G > OK จะได้ข้อมูลเว้นบรรทัด
จากนั้นคัดลอก B2:B182 แล้วไปคลิ๊กที่ A3 แล้วไปที่แท็บ Home เลือก Paste > Paste Special > Skip Blank >OK จะได้ข้อมูลที่ต้องการ แล้วลบคอลัมน์ B ทิ้งไป
จากนั้นคัดลอก D2:D182 แล้วไปคลิ๊กที่ B3 แล้วไปที่แท็บ Home เลือก Paste > Paste Special > Skip Blank >OK จะได้ข้อมูลที่ต้องการ แล้วลบคอลัมน์ D ทิ้งไป
จากนั้นคัดลอก D2:D182 แล้วไปคลิ๊กที่ C3 แล้วไปที่แท็บ Home เลือก Paste > Paste Special > Skip Blank >OK จะได้ข้อมูลที่ต้องการ แล้วลบคอลัมน์ D ทิ้งไป
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 3:49 pm
by itsadaw.
ขอบคุณมากๆ ครับ ผมจะลองทำเลยครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 4:17 pm
by itsadaw.
ลองทำแล้วครับ พอทำได้เลยครับผม แต่เนื่องจากผมไม่สันทัด สูตร Left กับ Trim ในรูปแบบนี้ครับ
เพราะถ้าเป็นสูตร Trim ทางผมจะใช้เฉพาะรูปแบบไม่มีเงื่อนไขมากครับ
เช่นตัดช่องว่างออกในเชลล์นั้นๆ
รูปแบบทั้งสองสูตรนี้ ขอคำอธิบายความหมาย ของแกรมม่า สูตรทั้งสองด้วยครับผม
ขอบคุณอีกครั้งครับ.
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 4:32 pm
by bank9597
itsadaw. wrote:ลองทำแล้วครับ พอทำได้เลยครับผม แต่เนื่องจากผมไม่สันทัด สูตร Left กับ Trim ในรูปแบบนี้ครับ
เพราะถ้าเป็นสูตร Trim ทางผมจะใช้เฉพาะรูปแบบไม่มีเงื่อนไขมากครับ
เช่นตัดช่องว่างออกในเชลล์นั้นๆ
รูปแบบทั้งสองสูตรนี้ ขอคำอธิบายความหมาย ของแกรมม่า สูตรทั้งสองด้วยครับผม
ขอบคุณอีกครั้งครับ.
ตัวอย่างข้อมูล ที่ A1 คือ 48420EB71A86845EB72A
ที่ B1 คีย์ =LEFT(A1,10) ผลลัพธ์ที่ได้คือ 48420EB71A
สูตร left จึงหมายความว่า ดึงข้อมูลที่นับจากทางด้านซ้ายมา 10 ตัวอักษร
ที่ C1 คีย์ =SUBSTITUTE(A1,B1,"") ผลลัพธ์ที่ได้คือ 48420EB71A
ความหมายของสูตรคือ ดึงข้อมูลส่วนที่เหลือจาก B1 เมื่อนำไปเทียบกับ A1 นั่นเอง
ส่วนการใส่ Trime คือการตัดช่องไฟออกไปทั้งหมด ให้เหลือแต่ข้อมูล มันจึงกลายมาเป็น =TRIM(SUBSTITUTE(A1,B1,""))
หากยังไม่เข้าใจ หรือที่ผมอธิบายไปอาจจะไม่ถูกต้องทั้งหมด รอท่านอื่นมาช่วยเสริมอีกทีครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 4:40 pm
by snasui

มาช่วยเสริม Substitute และ Trim ครับ
Substitute เป็นการเปลี่ยนแทน =SUBSTITUTE(A1,B1,"") มีความหมายว่าให้เปลี่ยนค่า B1 ใน A1 ให้เป็นค่าว่าง นั่นหมายความว่าค่า B1 จะอยู่ใน A1 ถึงจะไปเปลี่ยนได้ ถ้าไม่มีค่า B1 ใน A1 ผลลัพธ์ที่ได้คือค่า A1 เหมือนเดิมเพราะไม่มีอะไรถูกเปลี่ยน
ส่วน Trim เป็นการ
ตัดช่องว่างที่เกินความจำเป็นทิ้งไป เช่น วรรคด้านหน้าข้อความ, วรรคด้านหลังข้อความ หากเป็นวรรคระหว่างข้อความที่เกิน 1 วรรค จะปรับให้เหลือเพียง 1 วรรค
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 4:42 pm
by bank9597
snasui wrote:
มาช่วยเสริม Substitute และ Trim ครับ
Substitute เป็นการเปลี่ยนแทน =SUBSTITUTE(A1,B1,"") มีความหมายว่าให้เปลี่ยนค่า B1 ใน A1 ให้เป็นค่าว่าง นั่นหมายความว่าค่า B1 จะอยู่ใน A1 ถึงจะไปเปลี่ยนได้ ถ้าไม่มีค่า B1 ใน A1 ผลลัพธ์ที่ได้คือค่า A1 เหมือนเดิมเพราะไม่มีอะไรถูกเปลี่ยน
ส่วน Trim เป็นการ
ตัดช่องว่างที่เกินความจำเป็นทิ้งไป เช่น วรรคด้านหน้าข้อความ, วรรคด้านหลังข้อความ หากเป็นวรรคระหว่างข้อความที่เกิน 1 วรรค จะปรับให้เหลือเพียง 1 วรรค
เยี่ยมไปเลยครับ ขอบคุณครับอาจารย์
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 9:07 pm
by snasui
itsadaw. wrote:การแยกชุดข้อมูลตามใน Sheet มี เทคนิค อะไรบ้างไหมครับที่ให้แยกได้เร็วขึ้น ครับ
หรือจำเป็นต้องคีย์มือ เองเลยครับ
ถ้ามีรบกวนด้วยครับ คุณแบงค์ ขอบคุณครับ
มาแถมสูตรครับ
- ที่ M687 คีย์
=IF(ISODD(ROWS(M$687:M687)),LEFT(INDEX($C$687:$C$777,INT((ROWS(M$687:M687)-1)/2)+1),10),SUBSTITUTE(INDEX($C$687:$C$777,INT((ROWS(M$687:M687)-1)/2)+1),M686,""))
Enter > Copy ลงด้านล่าง
- ที่ N687 คีย์สูตร
=INDEX(D$687:D$777,INT((ROWS(M$687:M687)-1)/2)+1)
Enter > Copy ไปด้านขวาและลงด้านล่าง
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Thu Nov 01, 2012 10:37 pm
by bank9597
snasui wrote:itsadaw. wrote:การแยกชุดข้อมูลตามใน Sheet มี เทคนิค อะไรบ้างไหมครับที่ให้แยกได้เร็วขึ้น ครับ
หรือจำเป็นต้องคีย์มือ เองเลยครับ
ถ้ามีรบกวนด้วยครับ คุณแบงค์ ขอบคุณครับ
มาแถมสูตรครับ
- ที่ M687 คีย์
=IF(ISODD(ROWS(M$687:M687)),LEFT(INDEX($C$687:$C$777,INT((ROWS(M$687:M687)-1)/2)+1),10),SUBSTITUTE(INDEX($C$687:$C$777,INT((ROWS(M$687:M687)-1)/2)+1),M686,""))
Enter > Copy ลงด้านล่าง
- ที่ N687 คีย์สูตร
=INDEX(D$687:D$777,INT((ROWS(M$687:M687)-1)/2)+1)
Enter > Copy ไปด้านขวาและลงด้านล่าง
ยากจริงๆครับ
Re: ผมอยากให้เชลล์ที่ Merge ไปแล้วนั้น แยกบรรทัดออกมา เพื่อV
Posted: Fri Nov 02, 2012 11:26 am
by itsadaw.
OH ! งง ครับ แต่ สุดยอด.