snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
faii_B
Member
Posts: 4 Joined: Sat Jan 26, 2019 4:15 am
#1
Post
by faii_B » Sat Jan 26, 2019 4:34 am
รบกวนสอบถามวิธีการจับคู่ข้อมูลรายชื่อบริษัทจากsheet benefits ไปยังsheet guo_base ว่ามีวิธีการอย่างไรค่ะ โดยหากเป็นบริษัทเดียวกันต้องการนำข้อมูลทั้งหมดของบริษัทนั้นๆที่อยู่ในsheet benefits ไปยังsheet guo_base ค่ะ เบื้องต้นจากรายชื่อบริษัทเดียวกันของทั้งสองแผ่นงานยังไม่เหมือนกันร้อยเปอร์เซ็นเนื่องจากแผ่นงานหนึ่งบางครั้งลงท้ายด้วย company LTD อีกแผ่นงานเป็น CO LTD ค่ะ ทั้งนี้ได้แนบไฟล์มาในที่นี้ด้วยค่ะ
ขอบคุณสำหรับคำตอบล่วงหน้านะคะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Sat Jan 26, 2019 7:34 am
ยกตัวอย่างคำตอบที่ต้องการมาด้วยว่ามีลักษณะเป็นอย่างไร อยู่ในเซลล์ไหนบ้าง ด้วยค่าเท่าใด พิจารณาอย่างไรจึงได้เป็นค่านั้น ฯลฯ จะได้สะดวกในการทำความเข้าใจครับ
faii_B
Member
Posts: 4 Joined: Sat Jan 26, 2019 4:15 am
#3
Post
by faii_B » Sat Jan 26, 2019 3:02 pm
ขอบคุณมากค่ะ
ต้องการนำรายชื่อบริษัทที่อยู่ในแผ่นงานbenefit (column B) matching กับชื่อบริษัทในแผ่นงาน guo_base (column A) ถ้าบริษัทไหนที่เป็นบริษัทเดียวกันต้องการนำข้อมูลตั้งแต่ column C to U ในแผ่นงานbenefit มาใส่ในแผ่นงานguo_base ใน column GM เป็นต้นไปค่ะ โดยข้อมูลนั้นๆไม่ได้มีการผูกค่าไว้ หากคัดลอกมาสามารถนำมาวางได้เลยค่ะ จึงอยากสอบถามอาจารย์ว่ามีวิธีการ matching ข้อมูลโดยที่ไม่ต้องนั่งไล่ดูที่ละรายชื่อบริษัทหรือไม่คะ ทั้งนี้ข้อมูลยังมีปัญหา ดังนี้ค่ะ
1. รายชื่อบริษัทยังกำหนดไม่เหมือนกัน เช่น ในแผ่นงานนึง "AX XXX Company LIMITED" อีกแผ่นงานเป็น "AX XXX CO., LTD."
2. ภายใต้ชื่อบริษัทเดียวกัน เช่น 1 รายชื่อบริษัทในแผ่นงานguo_base อาจแตกออกเป็น 4รายชื่อบริษัทในแผ่นงานbenefit (ชื่อเหมือนกันแต่แยกออกเป็นสี่เนื่องจากlocation ของที่ตั้งแตกต่างกัน) เป็นไปได้หรือไม่คะ ที่จะนำข้อมูลที่แตกออกเป็นสี่บริษัท ดึงมาวางในแผ่นงาน guo_base ทั้งหมดค่ะ
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Sat Jan 26, 2019 5:01 pm
กรุณากรอกตัวอย่างคำตอบด้วยมือลงในไฟล์ตัวอย่างมาสักสองสามตัวอย่างแล้วแนบมาใหม่
ชี้ให้เห็นว่าเซลล์ไหนได้ค่าเป็นเท่าใด มีวิธีพิจารณาอย่างไรจึงได้ค่าเท่านั้น เพื่อสะดวกแก่เพื่อนสมาชิกในการใช้สูตรดึงค่ามาเปรียบเทียบครับ
Bo_ry
Gold
Posts: 1245 Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:
#5
Post
by Bo_ry » Sat Jan 26, 2019 5:16 pm
แบบนี้รึเปล่า
GM2 ลากขวา ลากลง
=IFERROR(INDEX(benefit!B$2:B$94,-LOOKUP(1,-MATCH(IFERROR(LEFT($A2,-LOOKUP(1,-SEARCH({"ltd","limited","co.","co ","Company"},$A2))-{1,0}),A2)&"*",INDEX(TRIM(benefit!$B$2:$B$94),),))),"")
faii_B
Member
Posts: 4 Joined: Sat Jan 26, 2019 4:15 am
#6
Post
by faii_B » Sat Jan 26, 2019 5:50 pm
Bo_ry wrote: Sat Jan 26, 2019 5:16 pm
แบบนี้รึเปล่า
GM2 ลากขวา ลากลง
=IFERROR(INDEX(benefit!B$2:B$94,-LOOKUP(1,-MATCH(IFERROR(LEFT($A2,-LOOKUP(1,-SEARCH({"ltd","limited","co.","co ","Company"},$A2))-{1,0}),A2)&"*",INDEX(TRIM(benefit!$B$2:$B$94),),))),"")
ใช่เลยค่ะ ดีใจมากเลยขอบคุณคุณ Bo_ry มากๆค่ะ แต่มีติดอีกนิดนึงค่ะ บางบริษัทในแผ่นงานแรกมีเพียงรายชื่อเดียว แต่พอมาอีกแผ่นงานหนึ่งมีจำนวนรายชื่อบริษัทนั้นๆมากกว่าหนึ่ง จะทำยังไงให้ข้อมูลมันลิสออกมาหมดได้คะ ทั้งนี้ ได้แนบตัวอย่างมาให้แล้วค่ะ อยู่ในแผ่นงาน few_example ค่ะ ขอบคุณสำหรับความช่วยเหลือของทุกคนล่วงหน้าเลยค่ะ
You do not have the required permissions to view the files attached to this post.
Bo_ry
Gold
Posts: 1245 Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:
#7
Post
by Bo_ry » Sat Jan 26, 2019 6:42 pm
A1 RUBBER อีกชีทเป็น A 1 RUBBER , เปลี่ยนเป็น A1 ก็ใช้ได้
ถ้าใช้สูตร A*1 RUBBER ก็ได้แต่จะติดค่าผิดมาด้วย เช่น
ACS CO LTD => A*CS=> A N I LOGISTI CS LTD.
ลิสออกมาหมด จะให้แสดงค่ายังไง ถ้าหลายค่าใน cell เดียวต้องมี Excel365 Textjoin หรือใช้ VBA
ถ้าจะให้เพิ่มแถวก็ต้อง VBA
faii_B
Member
Posts: 4 Joined: Sat Jan 26, 2019 4:15 am
#8
Post
by faii_B » Mon Jan 28, 2019 5:50 pm
ขอบคุณมากๆค่ะ สำหรับความรู้ เดี๋ยวจะลองนำไปทำดูนะคะ