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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Greensand
Member
Posts: 181 Joined: Mon Oct 18, 2010 10:45 am
#1
Post
by Greensand » Mon Jul 02, 2012 4:39 pm
เรียน อาจารย์ / ผู้รู้ทุกท่าน
ถ้าต้องการให้จำนวนเงิน 23,087.96 บาท
แสดงค่าเป็น 23,100 บาท ต้อง Set อย่างไรคะ
ขอขอบคุณที่ให้ความรู้ใหม่ ๆ .......การเรียนรู้ไม่มีที่สิ้นสุด Greensand
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#2
Post
by joo » Mon Jul 02, 2012 4:57 pm
ลองแบบนี้ดูครับที่เซลล์A1 คีย์ 23087.96 ที่เซลล์ B2 คีย์ =ROUNDUP(A1,-2) Enter สังเกตุผลลัพธ์ครับ
ysamroeng
Member
Posts: 105 Joined: Fri Feb 05, 2010 11:17 am
#3
Post
by ysamroeng » Mon Jul 02, 2012 5:24 pm
Greensand wrote: เรียน อาจารย์ / ผู้รู้ทุกท่าน
ถ้าต้องการให้จำนวนเงิน 23,087.96 บาท
แสดงค่าเป็น 23,100 บาท ต้อง Set อย่างไรคะ
ปัดขึ้น =CEILING(จำนวนเงิน,100)
ปัดลง =FLOOR(จำนวนเงิน,100)
Greensand
Member
Posts: 181 Joined: Mon Oct 18, 2010 10:45 am
#4
Post
by Greensand » Tue Jul 03, 2012 10:48 am
ทดลองทำตามสูตรของ Guru ทั้ง 2 ท่านแล้ว ได้ผลลัพธ์เหมือนกัน แต่เนื่องจากชุดข้อมูลแนว Column บางรายการมีหลักเป็นหลักหน่วย หรือหลักสิบด้วย
ทำให้เวลาปัดตัวเลขสูงเกินความเป็นจริง จะเป็นไปได้ไหมคะ ที่มีสูตรรองรับเพิ่มเติมด้วย ถ้าเป็นเพียงหลักสิบ ก็ปัดเพียงหลักสิบ ถ้าหลักหน่วยก็ปัดเป็นเพียงหลักหน่วย
ตามตัวอย่างผลลัพธ์ที่ต้องการ ของ 3 แถวสุดท้าย ตามตัวเลขที่แก้ไขค่ะ
ข้อมูลเดิม ข้อมูลจากการใช้สูตร
2,618.02 2,700.00
907.26 1,000.00
260.50 300.00
260.50 300.00
240.00 300.00
50.00 50.00
35.00 40.00
2.50 3.00
ขอขอบคุณที่ให้ความรู้ใหม่ ๆ .......การเรียนรู้ไม่มีที่สิ้นสุด Greensand
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#5
Post
by snasui » Tue Jul 03, 2012 12:25 pm
สมมุติข้อมูลเดิมเริ่มที่ A1 ที่ B1 คีย์
=ROUNDUP(A1,LOOKUP(LEN(INT(A1)),{1,2,3},{0,-1,-2}))
Enter > Copy ลงด้านล่าง
norkaz
Gold
Posts: 1826 Joined: Wed Jan 12, 2011 7:59 pm
Excel Ver: 2013,365
#6
Post
by norkaz » Tue Jul 03, 2012 8:50 pm
คุณคนควนแสดงวิธี ซ้อนแบบติดกล Array เข้าไปแบบนี้ สูตรกระชับและสวยมาก
คนที่ใช้ Array ได้เก่งมีมากมาย แต่คนที่ ถอดกล Array แบบย้อนกลับ ออกเป็นชั้นๆได้
นับว่ามีไม่กี่คน
นับถือ
Norkaz
Greensand
Member
Posts: 181 Joined: Mon Oct 18, 2010 10:45 am
#7
Post
by Greensand » Wed Jul 04, 2012 3:43 pm
ทำงานได้แล้วค่ะ ขอขอบคุณอาจารย์คนควน และ Guru ทุกท่านที่ให้ความรู้ค่ะ
ขอขอบคุณที่ให้ความรู้ใหม่ ๆ .......การเรียนรู้ไม่มีที่สิ้นสุด Greensand
excelman
Member
Posts: 65 Joined: Mon Mar 21, 2011 2:05 pm
#8
Post
by excelman » Mon Jul 09, 2012 10:18 pm
ขอถามต่อจากปัญหานี้ครับ อาจจะไม่ตรงกับหัวข้อแต่ปัญหาใกล้เคียงครับ
ที่ A1 คีย์เลข 5564140.71
ที่ A2 เป็นผลลัพท์ที่คำนวนมาอีกทีนึงได้ค่า 289.7678478 แต่ตั้งค่าไว้ให้แสดงทศนิยมสองตำแหน่งได้เเป็น 289.77
ที่ A3 เป็นผลลัพท์ของ A1 หารด้วย A2 ค่าที่ได้ต้องเป็น 19201.92
แต่ excel คำนวนได้เป็น 19202.06 คิดว่ามาจากที่ A2 ค่ามีทศนิยมหลายตำแหน่งแล้วมาคำนวนทั้งหมด
ผมต้องตั้งค่ายังไงให้ excel เอาค่าทศนิยมแค่สองตำแหน่งมาคำนวนครับผม
snasui
Site Admin
Posts: 31253 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#9
Post
by snasui » Mon Jul 09, 2012 10:34 pm
ใช้ Round มาช่วยได้ครับ เช่น
=Round(A1,2)/Round(A2,2)
ฟังก์ชั่น Round เป็นการปัดเศษทศนิยม ตัวเลข 2 ด้านบนคือปัดทศนิยมให้เหลือ 2 ตำแหน่ง ถ้าทศนิยมหลักที่ 2 มีค่ามากกว่าหรือเท่ากับ 5 ก็จะปัดขึ้นถ้าน้อยกว่า 5 จะปัดลง
excelman
Member
Posts: 65 Joined: Mon Mar 21, 2011 2:05 pm
#10
Post
by excelman » Mon Jul 09, 2012 10:48 pm
ได้ผลลัพท์ตามที่ต้องการแล้วครับอาจารย์ ขอบคุณมากๆครับ (อาจารย์ตอบเร็วมาก)