snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
sea2sky
Member
Posts: 88 Joined: Sat Jan 30, 2010 3:05 pm
Excel Ver: 2010 2013
#1
Post
by sea2sky » Sat Apr 09, 2011 3:59 pm
รบกวนให้อาจารย์ช่วยคิดสูตรการตัดตัวอักษร โดยมีเงื่อนไขดังนี้ค่ะ
1. ถ้าตัวอักษรแรก เป็น*พยัญชนะ* ให้ตัด *ตัวอักษรที่เป็นพยัญชนะตัวแรก นับจากซ้ายมือ* ออกมาค่ะ
2. ถ้าตัวอักษรแรก เป็น*สระ* ให้ตัด *ตัวอักษรที่เป็นพยัญชนะตัวแรก นับจากซ้ายมือ* ออกมาค่ะ
A1 คือ กาญจนา ผลลัพท์ที่ต้องการ คือ ก
A2 คือ เอกวัฒน์ ผลลัพท์ที่ต้องการ คือ อ
A3 คือ รุ้งทอง ผลลัพท์ที่ต้องการ คือ ร
จะเขียนสูตรว่าอย่างไรค่ะ
ขอบคุณมากค่ะ
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#2
Post
by joo » Sat Apr 09, 2011 8:45 pm
ลองแบบนี้พอได้ไหมครับ
ถ้าตัวอักษรแรก เป็น "พยัญชนะ"
ที่ B1 คีย์ =LEFT(A1,1) หรือ
ที่ D1 คีย์ =MID(A1,1,1)
ถ้าตัวอักษรแรก เป็น "สระ"
ที่ B2 คีย์ =LEFT(A2,2) แล้วที่ C2 คีย์ =RIGHT(B2,1)
ที่ B2 คีย์ =MID(A2,2,1)
You do not have the required permissions to view the files attached to this post.
sea2sky
Member
Posts: 88 Joined: Sat Jan 30, 2010 3:05 pm
Excel Ver: 2010 2013
#3
Post
by sea2sky » Sat Apr 09, 2011 10:01 pm
ขอบคุณค่ะ
แต่ยังไม่ตรงกับความต้องการค่ะ
ข้อมูลอยู่ในคอลัมน์ A และผลลัพท์ให้อยู่ในคอลัมน์ B
***ต้องการแบบสูตรเดียว แล้วลากลงมาด้านล่าง
ให้ได้ผลลัพท์ที่ต้องการเลยค่ะ***
แม้ว่าจะยังไม่ตรงกับความต้องการ
แต่ก็ขอบคุณค่ะ ที่มาตอบคำถามให้ค่ะ ^-^
kmb
Bronze
Posts: 305 Joined: Thu Oct 14, 2010 10:03 pm
#4
Post
by kmb » Sun Apr 10, 2011 9:43 am
ลองดูตามไฟล์แนบครับ
ที่เซลล์ D1-44 ผมคีย์ค่าตั้งแต่ ก จนถึง ฮ
ที่เซลล์ B1 ใส่สูตรนี้ครับ
=LEFT(SUBSTITUTE(A1,LEFT(A1,MIN(SEARCH($D$1:$D$44,A1&$D$1:$D$44)-1)),""),1)
Ctrl+Shift+Enter > แล้วจะได้เครื่องหมายปีกกา { } คลุมสูตร (เป็นสูตร Array) >> copy ลงด้านล่างได้เลยครับ
แนวคิดมาจากลิ้งค์นี้ครับ
http://snasui.blogspot.com/2008/11/blog-post_08.html
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#5
Post
by snasui » Sun Apr 10, 2011 7:35 pm
แถมครับ จากไฟล์ล่าสุดที่คุณ kmb แนบมา ที่ B1 คีย์
=MID(A1,MIN(SEARCH(CHAR(ROW($161:$206)),A1&CHAR(ROW($161:$206)))),1)
Ctrl+Shift+Enter > Copy ลงด้านล่าง
kmb
Bronze
Posts: 305 Joined: Thu Oct 14, 2010 10:03 pm
#6
Post
by kmb » Sun Apr 10, 2011 8:19 pm
snasui wrote: แถมครับ จากไฟล์ล่าสุดที่คุณ kmb แนบมา ที่ B1 คีย์
=MID(A1,MIN(SEARCH(CHAR(ROW($161:$206)),A1&CHAR(ROW($161:$206)))),1)
Ctrl+Shift+Enter > Copy ลงด้านล่าง
อันนี้หมายถึง CHAR 161-206 แทน ก - ฮ หรือเปล่าครับ ถ้าใช่นี่สงสัยว่าผมจะเจออาการเลือกที่รักมักที่ชังอีกแล้ว เพราะว่าเครื่องผมมันได้ผลลัพธ์เป็นว่างน่ะครับ
ผมก็พยายามแกะอยู่ว่า CHAR ไหนแทน ก - ฮ แต่เครื่องผมลองตั้งแต่ 1 -255 แล้วไม่เจอเลยครับ
sea2sky
Member
Posts: 88 Joined: Sat Jan 30, 2010 3:05 pm
Excel Ver: 2010 2013
#7
Post
by sea2sky » Sun Apr 10, 2011 8:41 pm
ขอบคุณค่ะ คุณ kmb
ขอบคุณค่ะ อาจารย์คนควน
ได้ผลลัพท์ตรงกับความต้องการแล้วค่ะ
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#8
Post
by snasui » Mon Apr 11, 2011 11:09 am
kmb wrote: snasui wrote: แถมครับ จากไฟล์ล่าสุดที่คุณ kmb แนบมา ที่ B1 คีย์
=MID(A1,MIN(SEARCH(CHAR(ROW($161:$206)),A1&CHAR(ROW($161:$206)))),1)
Ctrl+Shift+Enter > Copy ลงด้านล่าง
อันนี้หมายถึง CHAR 161-206 แทน ก - ฮ หรือเปล่าครับ ถ้าใช่นี่สงสัยว่าผมจะเจออาการเลือกที่รักมักที่ชังอีกแล้ว เพราะว่าเครื่องผมมันได้ผลลัพธ์เป็นว่างน่ะครับ
ผมก็พยายามแกะอยู่ว่า CHAR ไหนแทน ก - ฮ แต่เครื่องผมลองตั้งแต่ 1 -255 แล้วไม่เจอเลยครับ
CHAR(ROW($161:$206)) คือตัวแทนของ ก-ฮ ถูกต้องแล้วครับ การทดสอบว่า ก คือ Character ลำดับใด ให้เขียน ก ที่ A1 จากนั้นที่ B1 คีย์
=Code(A1)
Enter > สังเกตดูผลครับ
kmb
Bronze
Posts: 305 Joined: Thu Oct 14, 2010 10:03 pm
#9
Post
by kmb » Mon Apr 11, 2011 12:12 pm
ผมลองจากเครื่องที่ทำงานซึ่งเป็น Excel 2007 ได้ตามผลลัพธ์ของ CHAR 161-206 เป็น ก - ฮ ถูกต้องเลยครับ
แต่เครื่องที่บ้านซึ่งเป็น Excel 2010 ผมลองใช้ฟังก์ชั่น CODE( ) แล้วครับ แต่ได้ผลลัพธ์เป็น 63 เหมือนกันหมดเลยครับสำหรับ ก - ฮ
คงมีปัญหาสักอย่างสำหรับภาษาไทย
natthakan70
Member
Posts: 4 Joined: Mon Jul 09, 2012 2:41 pm
#10
Post
by natthakan70 » Fri Jan 17, 2014 2:52 pm
อาจารย์คะ รบกวนหน่อยค่ะ ลองทำตามสูตรที่อาจารย์ใ้ห้มาแล้ว ได้ผลลัพธ์ ไม่เป็นไปตามที่ต้องการ เช่น ของเอกลักษณ์ ได้ผลออกมาเป็น ก ส่วนคนอื่นๆ ได้เป็น เซลล์ว่าง และที่อาจารย์บอกว่า ให้กด Ctrl+shift+Enter กดแล้วไม่เห็นมีอะไรเกิดขึ้นเลยค่ะ มันทำเพื่ออะไรคะ
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#11
Post
by joo » Fri Jan 17, 2014 4:23 pm
ที่ได้ผลลัพธ์ออกมาเป็น ก เพราะว่ากดแป้นรับสูตรไม่ถูกต้อง เนื่องจากเป็นสูตร Array ครับจึงต้องกดแป้นพร้อมกันเพื่อให้รับสูตร
วิธีการคือ กดแป้น Ctrl+Shift ค้างไว้ก่อน แล้วกดแป้น Enter ตาม จากนั้นปล่อยแป้น แล้วสังเกตดูว่าสูตรมีเครื่องหมายปีกกาครอบหรือไม่ ถ้ามีแสดงว่ากดแป้นรับสูตรได้ถูกต้องครับ
natthakan70
Member
Posts: 4 Joined: Mon Jul 09, 2012 2:41 pm
#12
Post
by natthakan70 » Mon Jan 20, 2014 11:51 am
ทำได้แล้วค่ะ ขอบคุณมากๆค่ะ ขอบคุณทุกๆ คนเลยค่ะ