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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
piches
Member
Posts: 88 Joined: Sat Oct 22, 2011 9:15 am
#1
Post
by piches » Thu Jul 14, 2016 2:21 pm
สวัสดีครับอาจารย์เพือนๆทุกท่าน ผมขอความรู้ในการรันเลขที่เอกสารครับ
ผมต้องการ V0001 + 1 =V0002 ใช้สูตรอะไรได้บ้างครับ
piches
Member
Posts: 88 Joined: Sat Oct 22, 2011 9:15 am
#3
Post
by piches » Thu Jul 14, 2016 2:54 pm
A2=V0001
A3=RIGHT(A2,4)+1
A4=TEXT(A3,"V0000")ก็ได้ผลลัพธ์ที่ต้องการ คือ V0002
แต่มีวิธีที่บวกกัน เช่น A2+1= V0002 ต้องใช้สูตรอะไรครับ
piches
Member
Posts: 88 Joined: Sat Oct 22, 2011 9:15 am
#4
Post
by piches » Thu Jul 14, 2016 2:58 pm
ไฟล์ตัวอย่างครับ
You do not have the required permissions to view the files attached to this post.
Serverchita
Bronze
Posts: 296 Joined: Wed Nov 18, 2015 1:28 pm
Excel Ver: 365
#5
Post
by Serverchita » Thu Jul 14, 2016 3:02 pm
ลองดูนะครับ
You do not have the required permissions to view the files attached to this post.
piches
Member
Posts: 88 Joined: Sat Oct 22, 2011 9:15 am
#6
Post
by piches » Thu Jul 14, 2016 3:39 pm
ขอบคุณครับท่านServerchita ผมลองแล้ว
หากเลขที่บิลเกินหลักร้อย เช่น V0228
จะได้ผลลัพธ์ V000229 จะมีเลขศูนย์เพิ่มมาอีก2ตัวครับ
You do not have the required permissions to view the files attached to this post.
XDoll
Bronze
Posts: 261 Joined: Sun Mar 03, 2013 9:23 pm
#7
Post
by XDoll » Thu Jul 14, 2016 4:15 pm
จากไฟล์แนบ ลองสูตรนี้ครับ
ที่ A3 =LEFT(A1,1)&TEXT(MID(A1,2,4)+A2,"0000")
Serverchita
Bronze
Posts: 296 Joined: Wed Nov 18, 2015 1:28 pm
Excel Ver: 365
#8
Post
by Serverchita » Thu Jul 14, 2016 8:35 pm
ลองแบบนี้ดูนะครับ
แล้วลากสูตรลงมาเลื่อยๆ
You do not have the required permissions to view the files attached to this post.
piches
Member
Posts: 88 Joined: Sat Oct 22, 2011 9:15 am
#9
Post
by piches » Thu Jul 14, 2016 10:50 pm
Serverchita wrote: ลองแบบนี้ดูนะครับ
แล้วลากสูตรลงมาเลื่อยๆ
=IFERROR(LEFT(A1,1)&TEXT(1+RIGHT(A1,4),"0000"),"")ขอบคุณครับสูตรนี้ใช้ได้ตามต้องการเลยครับ
Aseerom
Member
Posts: 8 Joined: Mon Feb 10, 2020 9:14 am
#10
Post
by Aseerom » Sat Mar 21, 2020 10:00 am
สอบถามครับอาจารย์ถ้าผมต้องการให้มีกล่องโต้ตอบขึ้นมาให้ใส่เลขที่เราพิมพ์สุดท้ายต้องทำยังไงครับเพราะทุกครั้งต้องเอาเลขสุดท้ายไปกรอกในหน้า code
**ผมพึ่งเริ่มเรียนรู้การทำ VBA ครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#11
Post
by snasui » Sat Mar 21, 2020 11:55 am
ในไฟล์ที่แนบมามีตัวอย่าง InputBox อยู่แล้ว ลองเพิ่ม InputBox มาอีกกล่องเพื่อรับตัวเลขสุดท้ายที่เราต้องการ ลองทำเองดูก่อน ติดตรงไหนค่อยแนบไฟล์นั้นมาถามกันต่อครับ
Aseerom
Member
Posts: 8 Joined: Mon Feb 10, 2020 9:14 am
#12
Post
by Aseerom » Mon Mar 23, 2020 3:58 pm
ขอบคุณครับอาจารย์
ขอสอบถามอีกนิดครับ ถ้าต้องการให้เลขที่พิมพ์ครั้งสุดท้ายให้วนกลับมาใส่ตรง i ได้ไหมครับ อาจารย์
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#13
Post
by snasui » Mon Mar 23, 2020 5:52 pm
ทำได้ครับ
วิธีการคือ เก็บค่า i ไว้ในเซลล์ใด ๆ แล้วค่อยนำมาใช้ในการรันครั้งถัดไปครับ
Aseerom
Member
Posts: 8 Joined: Mon Feb 10, 2020 9:14 am
#14
Post
by Aseerom » Tue Mar 24, 2020 1:52 pm
ขอโทษครับอาจารย์พอมีตัวอย่างคร่าวๆไหมครับ ผมไม่ค่อยมีพื้นฐานการเขียนสูตรเลยครับ
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#15
Post
by snasui » Tue Mar 24, 2020 7:05 pm
ให้ค่า i มีค่าเท่ากับเซลล์ใด ๆ เช่น
i = Range("s1").Value
การกำหนดให้เซลล์ใด ๆ มีค่าเท่ากับค่า i เช่น
Range("s1").Value = i ครับ
Aseerom
Member
Posts: 8 Joined: Mon Feb 10, 2020 9:14 am
#16
Post
by Aseerom » Wed Mar 25, 2020 1:09 pm
ขอบคุณครับ อาจารย์
ผมจะลองเอาไปประยุกต์ใช้ครับ ส่วนคำถามแรกผมทำได้แล้วนะครับ InputBox
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#17
Post
by snasui » Wed Mar 25, 2020 8:03 pm
หากประยุกต์แล้วติดปัญหาใดสามารถสอบถามเข้ามาได้เรื่อย ๆ ครับ
การตอบคำถาม VBA มีกติกาว่าจะต้องเขียนมาเองก่อน หากยังไม่มีความรู้ก็จำเป็นต้องทำตามหนังสือมาก่อนเป็นลำดับเพราะหนังสือได้เรียบเรียงเรื่องที่จำเป็นต้องทราบตามลำดับเอาไว้แล้ว แต่ส่วนจะเป็นหนังสือเล่มไหนผมไม่สามารถบอกได้ ต้องลองไปอ่านด้วยตนเองจะดีที่สุด ทั้งนี้เนื่องจากแต่ละคนมีความชื่นชอบและมีความเข้าใจได้ยาก ง่าย ในลักษณะทางภาษาไม่เหมือนกัน อีกทั้งผมไม่ได้อ่านจากหนังสือไทยครับ