:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

หน้าที่ของเครื่องหมาย # ? ใน Custom Format Number

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
nattasiray
Bronze
Bronze
Posts: 284
Joined: Thu Feb 11, 2010 8:32 pm
Contact:

หน้าที่ของเครื่องหมาย # ? ใน Custom Format Number

#1

Post by nattasiray »

ในการจัดการแสดงผลตัวเลขแบบกำหนดเอง (Custom Format Number) ผมเข้าใจดังนี้

# แทนตัวเลขใด ๆ
0 ให้แสดงเลข 0 ด้วย
? ทำหน้าที่บังคับให้ในแต่ละหลักและตำแหน่งเครื่องหมายจุดทศนิยมตรงกัน

เมื่ออ่าน Help online บอกว่า
ถ้าใส่ตัวเลขไม่ครบหลักตาม Custom Format Number จะไม่แสดงค่านั้น เช่น Custom Format Number เป็น #.## แล้วกรอก .99 ก็พบว่า แสดงผลเป็น .99
แต่เมื่อผมกรอก 0.99 แล้ว
กรณที่ 1 จัดรูปแบบการแสดงผลตัวเลขด้วยรหัส #.## หรือ #.00 กลับพบว่าเลข 0 ในหลักหน่วยหายไป แต่แสดงผลเหมือนกัน ตกลง # ทำหน้าที่อะไรครับ

กรณีที่ 2 จัดรูปแบบการแสดงผลตัวเลขด้วยรหัส ?.???? หรือ #.##?? กลับพบว่าเลข 0 ในหลักหน่วยหายไป แต่แสดงผลเหมือนกัน ผมสงสัยว่าเครื่องหมาย ? นอกจากบังคับให้เครื่องหมายมหัพภาคให้ตรงกันแล้วยังมีหน้าที่อะไรอีกบ้าง

ดูจากแฟ้มแนบครับ
You do not have the required permissions to view the files attached to this post.
ณัฐศิระ เยาวสุต
(N. Yauvasuta)
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: หน้าที่ของเครื่องหมาย # ? ใน Custom Format Number

#2

Post by snasui »

:D
nattasiray wrote:กรณที่ 1 จัดรูปแบบการแสดงผลตัวเลขด้วยรหัส #.## หรือ #.00 กลับพบว่าเลข 0 ในหลักหน่วยหายไป แต่แสดงผลเหมือนกัน ตกลง # ทำหน้าที่อะไรครับ
แทนค่าตัวเลขทุกตัวยกเว้น 0 ในตำแหน่งที่ไม่สำคัญครับ

ยกตัวอย่างเช่น
  1. กำหนด # ให้กับตัวเลข 0.123 จะแสดงผลเป็นค่าว่าง (ไม่แสดง 0)
  2. กำหนด #.### ให้กับตัวเลข 0 จะแสดงผลเป็น . (ไม่แสดง 0)
  3. กำหนด #.### ให้กับตัวเลข 0.123 จะแสดงผลเป็น .123 (ไม่แสดง 0)
  4. กำหนด #.### ให้กับตัวเลข 2.100 จะแสดงผลเป็น 2.1 (ไม่แสดง 0)
  5. กำหนด #.### ให้กับตัวเลข 0.103 จะแสดงผลเป็น .103 (แสดง 0 ในตำแหน่งที่สำคัญ)
nattasiray wrote:กรณีที่ 2 จัดรูปแบบการแสดงผลตัวเลขด้วยรหัส ?.???? หรือ #.##?? กลับพบว่าเลข 0 ในหลักหน่วยหายไป แต่แสดงผลเหมือนกัน ผมสงสัยว่าเครื่องหมาย ? นอกจากบังคับให้เครื่องหมายมหัพภาคให้ตรงกันแล้วยังมีหน้าที่อะไรอีกบ้าง
เครืองหมาย ? ใช้ใน 2 กรณีครับ
  1. เพื่อแสดงตำแหน่งทศนิยมให้ตรงกัน ไม่ว่าด้านซ้ายและด้านขวาของทศนิยมมีกี่หลัก แนวของเครื่องหมาย . จะตรงกันตามแนวดิ่ง ไม่เยื้องซ้ายเยื้องขวา เช่นจัด Format เป็น ???.???
  2. ใช้สำหรับการ Format ของเศษส่วนและเป็นการเพิ่มช่องว่างให้กับเลข 0 ในตำแหน่งที่ไม่สำคัญ ในกรณีนี้เครื่องหมายเศษส่วน (เครื่องหมาย /) จะถูกจัดใหนตรงกันตามแนวดิ่งเสมอ ไม่ว่าตัวเลขก่อนและหลังเครื่องหมายเศษส่วนมีกี่หลัก
เช่นการจัด Format เป็น # ????/????

ดูตัวอย่างและคำอธิบายเพิ่มเติมที่นี่ครับ http://office.microsoft.com/en-001/exce ... 98679.aspx
nattasiray
Bronze
Bronze
Posts: 284
Joined: Thu Feb 11, 2010 8:32 pm
Contact:

รหัส #,### กับการแสดงเลข 0

#3

Post by nattasiray »

ประหลาดนะครับ

พอจัดรูปแบบการแสดงผลตัวเลขด้วยรหัส #,### แล้วกรอกตัวเลข 4000 ก็ได้ 4000 ครับ มันขัดแย้งกับกฎที่ระบุว่า "แทนค่าตัวเลขทุกตัวยกเว้น 0 ในตำแหน่งที่ไม่สำคัญ" ตกลงมีเกณฑ์ใดบ้างที่ใช้พิจารณาการแสดงเลข 0 ครับ

ขอบคุณครับ
ณัฐศิระ เยาวสุต
(N. Yauvasuta)
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: หน้าที่ของเครื่องหมาย # ? ใน Custom Format Number

#4

Post by snasui »

:D
nattasiray wrote:พอจัดรูปแบบการแสดงผลตัวเลขด้วยรหัส #,### แล้วกรอกตัวเลข 4000 ก็ได้ 4000 ครับ มันขัดแย้งกับกฎที่ระบุว่า "แทนค่าตัวเลขทุกตัวยกเว้น 0 ในตำแหน่งที่ไม่สำคัญ"
ตำแหน่ง 0 ที่อยู่ก่อนจุดทศนิยมและหลังตัวเลขอื่น ๆ ที่ไม่ใช่ 0 ย่อมมีความสำคัญเสมอ ตำแหน่งเลข 0 หลังทศนิยมและหลังตัวเลขอื่นถือว่าไม่เป็นตำแหน่งที่สำคัญครับ อีกตำแหน่งคือเลข 0 ที่อยู่ด้านหน้าตัวเลขอื่น ๆ ที่อยู่ก่อนทศนิยมไม่มีความสำคัญเช่นกันครับ :P
Post Reply