: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

เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
nuzone
Member
Member
Posts: 49
Joined: Sun Mar 16, 2014 9:48 am

เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#1

Post by nuzone »

ผมทำการคิดเกรดเฉลี่ย มีค่าตั้งแต่ 0-4 โดยกำหนดให้ช่องที่เป็น 0 แสดงตัวอักษรเตือนสีแดงครับ ใช้ conditional formatting เหมือนกับคอลัมน์ก่อนหน้า แต่ไม่สำเร็จครับ อีกทั้งค่า 0 ยังแสดงในช่องที่ไม่มีนักเรียนด้วยครับ ซึ่งได้ทำการตั้งค่า format cells > custom > พิมพ์ 0.0;;;@ แล้ว แต่ก็ไม่เป็นผลเช่นกัน หรือวิธีการนี้ใช้ไม่ได้กับการใช้สูตร if ครับ ขอความรู้จากท่านสมาชิกด้วยครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#2

Post by snasui »

nuzone wrote: Thu Apr 11, 2019 6:40 pm ได้ทำการตั้งค่า format cells > custom > พิมพ์ 0.0;;;@
:D ที่ผมยกมาเป็นการกำหนด Custom Format ไม่ถูกต้องครับ

ต้องทำความเข้าใจลักษณะการกำหนด Custom Format เสียใหม่ครับ

การพิมพ์เช่นนั้นหมายถึง
  • หากค่าในเซลล์เป็นบวกให้แสดงรูปแบบเป็น 0.0 คือมีทศนิยม 1 ตำแหน่ง
  • หากค่าในเซลล์เป็นลบให้แสดงเป็นค่าว่าง
  • หากค่าในเซลล์เป็นศูนย์ให้แสดงเป็นค่าว่าง
  • หากค่าในเซลล์เป็นเป็นตัวหนังสือให้แสดงตัวหนังสือนั้น
สูตร If ทีเขียนมานั้นควรจะให้แสดงผลลัพธ์เป็นตัวเลข ไม่ใช่ตัวหนังสือ การครอบตัวเลขด้วยเครื่องหมายฟันหนูจะทำให้ตัวเลขกลายเป็นตัวหนังสือทำให้เมื่อกำหนด Custom Format แล้วจะไม่ได้คำตอบตามที่ต้องการ ให้แก้ไขสูตรเสียใหม่โดยลบฟันหนูทิ้งไปครับ
nuzone
Member
Member
Posts: 49
Joined: Sun Mar 16, 2014 9:48 am

Re: เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#3

Post by nuzone »

ผมได้เอา custom format ออกแล้วครับ และเอาเครื่องหมายฟันหนูออกแล้วด้วย แต่ก็เจอปัญหาใหม่อีกครับ คือ เกรดเฉลี่ยที่เป็น 0 จริงจะไม่แสดงผลไปด้วย และเกรดเฉลี่ยที่มีทศนิยม จะถูกปรับเป็นจำนวนเต็ม

ขอคำแนะนำอาจารย์มีคำแนะนำเพิ่มเติมหน่อยครับ จุดประสงค์ที่ต้องการคือ ให้แสดงค่าเกรดเฉลี่ยเป็น 0/1/1.5/2/2.5/3/3.5/4 ให้ค่าที่เป็น 0 เป็นตัวอักษรสีแดง ส่วนเซลที่ไม่มีข้อมูลเกรดเฉลี่ย ไม่ต้องการให้แสดงค่า 0 ครับ
User avatar
Bo_ry
Gold
Gold
Posts: 1245
Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:

Re: เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#4

Post by Bo_ry »

H3
=IF(B5=0,"",MATCH(G5,{0,50,55,60,65,70,75,80})/2*(G5>=50))

Custom format
General;;[Red]0
You do not have the required permissions to view the files attached to this post.
nuzone
Member
Member
Posts: 49
Joined: Sun Mar 16, 2014 9:48 am

Re: เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#5

Post by nuzone »

Bo_ry wrote: Fri Apr 12, 2019 12:25 am H3
=IF(B5=0,"",MATCH(G5,{0,50,55,60,65,70,75,80})/2*(G5>=50))

Custom format
General;;[Red]0
ได้ผลตามที่ต้องการแล้วครับ ขอบคุณมากครับ เนื่องจากผมมือใหม่ ขอคำอธิบายสูตรที่แนะนำมาหน่อย เป็นความรู้ได้มั้ยครับ ว่าสูตรมีขั้นตอนการทำงานอย่างไร
User avatar
Bo_ry
Gold
Gold
Posts: 1245
Joined: Sun Aug 12, 2018 12:11 am
Excel Ver: MS 365
Contact:

Re: เปลี่ยนสีค่าเมื่อได้ 0 และ ซ่อนค่า 0 ที่ไม่มีข้อมูล

#6

Post by Bo_ry »

=IF(B5=0,"",
เช็คว่าถ้า B5 เป็นค่าว่างหรือ 0 ให้แสดงเป็นค่าว่าง "" ถ้าไม่ใช้คำนวณ
MATCH(G5,{0,50,55,60,65,70,75,80})/2*(G5>=50))
__________1, 2, 3 , 4, 5 , 6, 7, 8

MATCH(G5,{0,50,55,60,65,70,75,80}) aproximate match /2
G5 >=0 และ G5 < 50 ได้ 1 /2 =0.5
G5 >=50 และ G5 < 55 ได้ 2 /2 =1

G5 >=75 และ G5 < 80 ได้ 7 /2 =3.5
G5 >=80 ได้ 8 /2 =4

มี G5 < 50 ได้ 0.5 ควรจะเป็น 0 G5>=50 แสดงค่าถูกต้อง

ถ้า G5 < 50
0.5 *(G5>=50) =0.5 * False = 0.5 * 0 = 0

ถ้า G5 =50
1*(G5>=50) = 1 * True = 1* 1 = 1
Post Reply