วันอาทิตย์ที่ 15 พฤษภาคม 2022
  1 ตอบกลับ
  เยี่ยมชม 5.6 พันครั้ง
0
โหวต
แก้
สวัสดี.
ExtendOffice บทความอธิบายวิธีการแทรกโค้ดบางส่วนลงในโมดูลเพื่อคำนวณค่าของตัวเลขที่เป็นตัวหนา:
https://www.extendoffice.com/documents/excel/1339-excel-sum-count-bold-cells.html#a3

อย่างไรก็ตาม รหัส ละเว้นตำแหน่งทศนิยม และให้ผลลัพธ์ที่ไม่ถูกต้อง (โดยเฉพาะเมื่อต้องรับมือกับค่าขนาดเล็ก)

เพื่อทดสอบ ฉันได้เติมเซลล์ที่กล้าแสดงออกจำนวนหนึ่งที่มีค่า "0.5" หรือน้อยกว่า รหัสถือว่าพวกเขาทั้งหมดเป็น "0" และส่งผลให้มีการคำนวณเป็นศูนย์ อย่างไรก็ตาม เมื่อฉันป้อนค่า "0.51" ขึ้นไป ทั้งหมดจะถูกปัดเศษขึ้นเป็น "1" ดังนั้นจึงคำนวณผลลัพธ์ผิดพลาดอีกครั้ง

ไม่มีใครมีการแก้ไขสำหรับเรื่องนี้? รหัสดังต่อไปนี้

ฟังก์ชัน SumBold (WorkRng As Range)
'อัปเดต 20131202
Dim Rng เป็นช่วง
ติ่มซำ xSum นาน
สำหรับแต่ละ Rng ในการทำงานRng
ถ้า Rng.Font.Bold แล้ว
xSum = xSum + Rng.Value
End If
ถัดไป
SumBold = xผลรวม
ฟังก์ชั่นเอนด์
1 ปีที่ผ่านมา
·
#2707
0
โหวต
แก้
สวัสดี,

ขอบคุณสำหรับคำติชม ฉันได้อัปเกรดโค้ดในบทความแล้ว

กรุณาใช้รหัสด้านล่าง:


Function SumBold(WorkRng As Range)
'Update 20220516
Dim Rng As Range
Dim xSum As Double
For Each Rng In WorkRng
If Rng.Font.Bold Then
xSum = xSum + Rng.Value
End If
Next
SumBold = xSum
End Function


หากคุณมีคำถามเพิ่มเติม โปรดแจ้งให้เราทราบ

อแมนดา
  • หน้า:
  • 1
ไม่มีคำตอบสำหรับโพสต์นี้