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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
katai12
Member
Posts: 95 Joined: Sun May 15, 2016 6:22 pm
#1
Post
by katai12 » Tue Apr 26, 2022 3:33 pm
ขอสอบถามหน่อยค่ะ คือ คำนวณจาก Excle แล้ว ค่าที่ออกมา ให้แสดงทศนิยม 2 ตำแหน่ง แต่ค่าที่ได้ไม่ตรงกับเครื่องคิดเลขที่ตั้งทศนิยม ไว้ 2 ตำแหน่ง ต้องทำยังไงคะ
เช่น 720.10 ลบ 15%
ใน Excel จะขึ้นเป็น 612.09
แต่ถ้ากดเครื่องคิดเลขจะได้ 612.08
ต้องการให้ excle แสดง 612.08 ต้องทำยังไงคะ
หมายเหตุ ลองใช้ round แล้ว ทำไม่ได้ค่ะ
Xcelvba
Silver
Posts: 604 Joined: Thu Feb 03, 2022 9:04 am
Excel Ver: 2019
#2
Post
by Xcelvba » Tue Apr 26, 2022 4:34 pm
720.10-15% = 612.085 ถ้าปกติเป็น 2 ตำแหน่ง จะปัดขึ้นให้ครับเป็น 612.09
แต่ถ้าจะปัดเศษทิ้ง ใช้ =ROUNDDOWN ครับ
เช่น =ROUNDDOWN(720.10*0.85,2)
katai12
Member
Posts: 95 Joined: Sun May 15, 2016 6:22 pm
#3
Post
by katai12 » Tue Apr 26, 2022 8:40 pm
ขอบคุณค่ะ แต่ใส่ rounddown ไม่ได้ค่ะ เพราะอย่างถ้าซื้อสินค้า ราคาสินค้า 602.28 ซื้อ 23 แถม 2 จริง ๆ ที่ต้องการคือทศนิยม 2 ตำแหน่ง ถ้าใช้ rounddown จะกลายเป็น ราคาชิ้นละ 554.09 แต่ถ้าคำนวณด้วยเครื่องคิดเลข (ซึ่งต้องการให้ออกเป็นแบบนี้ค่ะ) จะได้ 554.10 ค่ะ ต้องใช้สูตรแบบไหนคะ ? รบกวนอีกรอบนะคะ
katai12
Member
Posts: 95 Joined: Sun May 15, 2016 6:22 pm
#4
Post
by katai12 » Tue Apr 26, 2022 11:53 pm
ตัวอย่างค่ะ ต้องการให้ออกมาเป็นแถวที่เป็น เครื่องคิดเลขค่ะ
ถ้าจุดทศนิยมตำแหน่งที่ 3 เป็น 5 ไม่ต้องปัด ค่ะ
You do not have the required permissions to view the files attached to this post.
Xcelvba
Silver
Posts: 604 Joined: Thu Feb 03, 2022 9:04 am
Excel Ver: 2019
#5
Post
by Xcelvba » Wed Apr 27, 2022 9:11 am
katai12 wrote: Tue Apr 26, 2022 11:53 pm
ตัวอย่างค่ะ ต้องการให้ออกมาเป็นแถวที่เป็น เครื่องคิดเลขค่ะ
ถ้าจุดทศนิยมตำแหน่งที่ 3 เป็น 5 ไม่ต้องปัด ค่ะ
จากไฟล์ที่แนบมาเป็นการปัดแบบคณิตศาสตร์ปกติครับ ไม่ค่อยเข้าใจคำถามเท่าไหร่ ไม่ต้องใช้สูตรใช้เครื่องมือในแถบ ribbon ตามรูปภาพครับ
You do not have the required permissions to view the files attached to this post.
katai12
Member
Posts: 95 Joined: Sun May 15, 2016 6:22 pm
#6
Post
by katai12 » Wed Apr 27, 2022 11:02 am
ก่อนอื่นต้องขอโทษนะคะ ที่อาจจะเขียนไม่ค่อยเข้าใจเท่าไหร่ ไม่รู้จะเรียบเรียงยังไงดีค่ะ
คือ อยากให้ excel คำนวณ แล้วผลออกมาเหมือนกดเครื่องคิดเลขค่ะ โดยปกติ excle จะปัดแบบคณิตศาสตร์ปกติ โดยใช้ ribbon ข้างบนใช่มั้ยคะ แต่ที่ต้องการคือ อยากให้ปัดเหมือนที่เรากดจากเครื่องคิดเลขค่ะ ที่ตั้งทศนิยมไว้ 2 ตำแหน่งเหมือนกัน
อย่างไฟล์ที่แนบ กรณีน้ำสมุนไพร ราคา 520.50 บาท ลด 7% จะได้เป็น 484.065000 และถ้าให้ปัดตามหลักคณิตศาตร์ปกติทศนินยม 2 ตำแหน่ง จะเป็น 484.07 ค่ะ
แต่ถ้าเรากดเครื่องคิดเลข จะเป็น 484.06 นี่คือสิ่งที่ต้องการค่ะ
ขออนุญาต แนบไฟล์อีกครั้งนะคะ พอดีเห็นมีบางคำถามคล้าย ๆ กัน แต่ทำแล้วไม่ได้ สรุปคือ เขาถามประมาณว่า ถ้า จุดทศนิยมตำแหน่งที่ 3 เป็น 0.005 ให้ไม่ต้องปัด แต่ถ้ามากกว่า 0.005 ปัดขึ้น น้อยกว่า 0.005 ปัดลง ตามตัวอย่างคือ 484.065000 ให้แสดงเป็น 484.06 ลองทำแล้ว มันได้ไม่หมดทุกตัวค่ะ ไม่แน่ใจผิดพลาดตรงไหนค่ะ
You do not have the required permissions to view the files attached to this post.
norkaz
Gold
Posts: 1805 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#7
Post
by norkaz » Wed Apr 27, 2022 7:50 pm
...
จากเงื่อนไขนี้
"ถ้า จุดทศนิยมตำแหน่งที่ 3 เป็น 0.005 ให้ไม่ต้องปัด แต่ถ้ามากกว่า 0.005 ปัดขึ้น น้อยกว่า 0.005 ปัดลง"
ลองปรับไปแบบนี้ดู
F2
=IF(MID((D2-D2*E2),SEARCH(".",(D2-D2*E2))+3,1)+0>5,ROUND((D2-D2*E2),2),ROUNDDOWN((D2-D2*E2),2))
Copy สูตรไปแถวอื่นๆ ที่ต้องการคำตอบในลักษณะนี้
Norkaz
You do not have the required permissions to view the files attached to this post.
katai12
Member
Posts: 95 Joined: Sun May 15, 2016 6:22 pm
#8
Post
by katai12 » Thu Apr 28, 2022 11:16 am
ลองทำดูแล้ว แต่ทำไม่ได้ทุกตัวค่ะ บางราคาทำได้ บางราคาทำไม่ได้ เกิดจากอะไรคะ ?
แล้วถ้าเรามีรายการแถมด้วย จะต้องทำยังไงคะ ? ขอโทษนะคะ ที่ไม่ได้ถามทีแรก เพราะคิดว่าน่าจะนำสูตรมาปรับได้ค่ะ
แต่ตัวเองทำไม่ได้ ยังไง รบกวนช่วยด้วยนะคะ ขอบคุณล่วงหน้าค่ะ
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:
#9
Post
by Bo_ry » Thu Apr 28, 2022 2:39 pm
H15
=ROUND(D15*(1-F15)-0.0001,2)