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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#1
Post
by banknurak » Sat Mar 17, 2018 12:52 pm
พอดีผมอยากตรวจสอบว่า ถ้าช่องA2 มีข้อความว่า ULx1 ให้ขึ้นเลข1,แต่ถ้าไม่มีให้ว่างเปล่า ในช่องB2
จากเบื้องต้นผมลองเขียนดูแล้วครับ แต่ก็ไม่ได้ผลลัพธ์ที่ต้องการ จึงอยากรบกวนแก้สูตรในช่อง B2ให้ผมหน่อยครับ ขอบคุณล่วงหน้าครับ
test.xlsx
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#2
Post
by snasui » Sat Mar 17, 2018 1:06 pm
เขียนอักขระยังไม่ครบครับ
สูตรที่ควรจะเป็นคือด้านล่างครับ
=IF(A2="[ ULx1] ",1,"")
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#3
Post
by banknurak » Sat Mar 17, 2018 1:11 pm
แล้วถ้าผมต้องการหาว่าถ้าแค่มีข้อความว่า ULx1อย่างเดียวละครับ ถ้าเกิดมี ให้ขึ้นเลข1ได้ไหมครับ สมมุติว่าข้อความมันจะมีอะไรก็ตาม แต่ถ้ามี ULx1 ให้ขึ้นเลข1ครับ #สามารถเขียนได้โดยวิิธีไหนได้มั้งครับบ
parakorn
Gold
Posts: 1223 Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:
#4
Post
by parakorn » Sat Mar 17, 2018 1:26 pm
ปรับสูตรเป็น
=IFERROR(IF(SEARCH("*ULx1*",A2)>=1,1,""),"")
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#5
Post
by snasui » Sat Mar 17, 2018 1:27 pm
อีกตัวอย่างการปรับสูตรครับ
=If(Isnumber(Search("ULx1",A2)),1,"") หรือ
=If(Count(Search("ULx1",A2)),1,"")
Search: เป็นการค้นหา ถ้าพบจะแสดงตัวเลข ตัวเลขนี้คืออักขระแรกของ ULx1 ที่พบใน A2 ถ้าไม่พบจะเกิดค่าผิดพลาด #Value!
Isnumber: เป็นการตรวจสอบว่าผลของ Search เป็นตัวเลขหรือไม่ หากใช่จะเป็น True หากไม่ใช่จะเป็น False
Count: เป็นการนับผลของ Search หากเป็นตัวเลขจะนับได้เป็น 1 หากเป็นค่าผิดพลาดจะนับตัวเลขแล้วได้เป็น 0 ตัวเลขใด ๆ ที่ไม่ใช่ 0 มีค่าเป็น True ในความหมายของของ If ส่วน 0 คือ False
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#6
Post
by banknurak » Sat Mar 17, 2018 1:41 pm
ขอบคุณมากๆครับ เบื้องต้นสูตรไหนแม่นยำสุดครับ ช่วยแนะนำทีครับ หรือว่าเหมือนๆกันหมด
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#7
Post
by banknurak » Sat Mar 17, 2018 1:47 pm
แต่ถ้าข้อมูลเป็น ULx11 ก็ขึ้นผลลัพธ์เหมือนกันเลยครับ อยากให้ขึ้นเฉพาะ ULx1ได้ไหมครับ พอมีสูตรอื่นอีกไหมครับ
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#8
Post
by snasui » Sat Mar 17, 2018 1:52 pm
ทบทวนโพสต์ #3 และ #7 แล้วตัดสินใจมาให้ชัดเจนว่าจะใช้แบบไหน ทำตัวอย่างข้อมูลพร้อมแสดงตัวอย่างคำตอบที่ถูกต้องและแนบมาใหม่ จะได้ตอบต่อไปจากนั้นครับ
จาก โพสต์ #3 และ #7 จะต้องเลือกมาอย่างใดอย่างหนึ่ง ไม่เช่นนั้นจะต้องอธิบายมาอย่างละเอียดที่สุดเท่าที่จะทำได้ว่าพิจารณาอย่างไรจึงต้องการให้ได้คำตอบเป็นค่านั้น ๆ จะได้เข้าใจตรงกันครับ
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#9
Post
by banknurak » Sat Mar 17, 2018 1:56 pm
ต้องขอโทษด้วยครับ อยากเจาะจงเฉพาะคำว่า "ULx1" แต่ถ้าเป็น "ULx11"ไม่อยากให้ขึ้นเลข1ครับ อยากให้เกิดผลลัพธ์เฉพาะข้อความ "ULx1"ครับ ในช่อง B14 ต้องไม่เกิดผลลัพธ์ครับ เพราะไม่ใช่ "ULx1"แต่เป็น "ULx11"ครับ
test.xlsx
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#10
Post
by snasui » Sat Mar 17, 2018 2:03 pm
ผมตอบไปแล้วตามโพสต์ #2 ไม่ทราบว่าติดขัดปัญหาตรงไหน อย่างไร ยกตัวอย่างให้เห็นถึงปัญหาดังกล่าวด้วยครับ
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#11
Post
by banknurak » Sat Mar 17, 2018 3:28 pm
ปัญหาคือ ถ้าข้อความเป็น ULx11 ก็ยังขึ้นผลลัพธ์ครับ ตัวอย่างคือในไฟล์ B14ครับ ส่วน #2 อันนี้คือข้อความ "ULx1" คือถูกแล้วครับ แต่ถ้ามีเลข 1 ต่อหลัง ULx1อีก ก็คือ ULx11 ก็แสดงว่าไม่ตรงตามเงื่อนไขครับ เนื่องจากผมอยากให้มันหาแต่คำว่า ULx1 ไม่ใช่ ULx11ครับ
คือผมอยากได้แค่ตัวสอบว่า "ULx1"ถึงขึ้น1 ถ้า "ULx11" ให้มันช่องว่างครับ เนื่องจากไม่ตรงตามเงื่อนไข พอเข้าใจไหมครับ
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#12
Post
by snasui » Sat Mar 17, 2018 3:30 pm
ไม่เข้าใจครับ
คีย์สูตรตามโพสต์ #2 แล้วแนบไฟล์นั้นมา ชี้ให้เห็นเซลล์ที่เป็นปัญหา ระบุมาด้วยว่าคำตอบที่ถูกต้องจะต้องได้เท่าใด เหตุใดจึงต้องเป็นค่านั้น ฯลฯ ครับ
banknurak
Member
Posts: 80 Joined: Sat Feb 03, 2018 11:09 am
#13
Post
by banknurak » Sat Mar 17, 2018 3:36 pm
ที่ B3 ไม่ควรได้เลข1 เนื่องจากจะให้หาแต่คำว่า "ULx1" ค่าที่ถูก B3 ต้องมีแค่ค่าว่าง
"ส่วน B2 ถูกแล้วครับ เพราะว่าตรงตามเงื่อนไข ULx1"
test.xlsx
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30761 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#14
Post
by snasui » Sat Mar 17, 2018 3:43 pm
สูตรที่คีย์มาในโพสต์ #13 ไม่ใช่สูตรที่ผมตอบไปตามโพสต์ #2 ผมยกมาอีกทีตามด้านล่างครับ
ให้ปรับเป็นสูตรนี้แล้วตรวจสอบว่าถูกต้องหรือไม่ อย่างไร หากไม่ถูกต้องให้คีย์สูตรนี้มาในไฟล์ตัวอย่างแล้วชี้ให้เห็นว่าที่ถูกต้องค่าใด เหตุใดจึงเป็นค่านั้น เช่นนี้เป็นต้นครับ
snasui wrote: ↑ Sat Mar 17, 2018 1:06 pm
เขียนอักขระยังไม่ครบครับ
สูตรที่ควรจะเป็นคือด้านล่างครับ
=IF(A2="[ ULx1] ",1,"")
หมายเลขโพสต์ที่ผมกล่าวถึงหมายถึงหมายเลขตามภาพครับ
You do not have the required permissions to view the files attached to this post.
parakorn
Gold
Posts: 1223 Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:
#15
Post
by parakorn » Sat Mar 17, 2018 11:53 pm
ไฟล์ที่แนบมา ควรระบุปัญหาที่มีทั้งหมด
ผู้ตอบจะได้ไม่สับสนครับ
ลองสูตรนี้ดูครับ
=IFERROR(IF(ISNUMBER(MID(A2,FIND("ULx1",A2)+4,1)+0)=TRUE,"",IF(SEARCH("ULx1",A2),1,0)),"")
"ถ้าติดขัดให้แนบไฟล์ พร้อมแจ้งปัญหาให้ครบถ้วน และ คำตอบที่ต้องการให้ชัดเจนครับ"