Giúp: Tìm lỗi của hàm ROUND ?

Liên hệ QC

tedaynui

(*_*)
Thành viên danh dự
Tham gia
12/8/06
Bài viết
1,875
Được thích
2,480
Chào các bạn,
Mình có 2 cột điểm và tính điểm trung bình cộng, làm tròn lấy phần nguyên
Mình test thử 1 đoạn code nhỏ tính điểm trung bình dựa vào Array nhưng gặp chút lỗi, không tìm ra do đâu
VD :
Trường hợp (7 + 6) / 2 => kết quả lẽ ra là 7 nhưng nó lại ra 6
Trường hợp (9 + 8) / 2 => kết quả lẽ ra là 9 nhưng nó lại ra 8
... ...
PHP:
Sub TEST()
Dim Arr
Dim i As Long
Arr = [A1:C20]
For i = 1 To 20
    Arr(i, 3) = Round((Arr(i, 1) + Arr(i, 2)) / 2, 0)
Next i
[A1:C20] = Arr
Erase Arr
End Sub
Xin cảm ơn
 

File đính kèm

Mình cũng không biết tại sao, nhưng mình sử dụng hàm Round trong wordsheet thì được.
 

File đính kèm

Upvote 0
Đó không phải lỗi code cũng không phải lỗi array, mà là lỗi của Anh Bill:
Trong cửa sổ immediate, gõ ?Round(6.5, 0) rồi enter cũng ra 6, Gõ ?Round(8.5, 0) rồi enter cũng ra 8

Cách khắc phục: Dùng Application.Round thay cho Round
 
Upvote 0
Xin cảm ơn
Vì em nghĩ nếu VBA có hàm Round thì dùng sẽ nhanh hơn Round của WorkSheet nhưng đành chịu thôi.

TDN
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom