Hàm ngẫu nhiên RND() không thực sự ngẫu nhiên?

  • Thread starter Thread starter vhkhoi
  • Ngày gửi Ngày gửi
Liên hệ QC

vhkhoi

Thành viên mới
Tham gia
14/10/08
Bài viết
35
Được thích
0
Tôi có sử dụng hàm ngẫu nhiên RND() trong VBA gặp tình huống như sau:
Khi chạy macro như sau:
Sub ngaunhien()
Range("A1").Select
ActiveCell.Value = Rnd()
End Sub
Kết quả:
Lần thứ nhất = 0,705547511577606
Lần thứ 2 = 0,533424019813537
Lần thứ 3 = 0,579518616199493
Lần thứ 4 = 0,289562463760376
Vv...
Đóng file đó lại, rồi mở lại, chạy lại thì vẫn cho kết quả như trước. Vậy thì nó đâu còn gọi là ngẫu nhiên nữa.
Không biết các bạn có bị như vậy không.
 

File đính kèm

Bạn nên xài thêm Randomize Statement xem sao

& bài này nên dời vô BOX lập trình!
 
Upvote 0
Tôi có sử dụng hàm ngẫu nhiên RND() trong VBA gặp tình huống như sau:
Khi chạy macro như sau:
Sub ngaunhien()
Range("A1").Select
ActiveCell.Value = Rnd()
End Sub
Kết quả:
Lần thứ nhất = 0,705547511577606
Lần thứ 2 = 0,533424019813537
Lần thứ 3 = 0,579518616199493
Lần thứ 4 = 0,289562463760376
Vv...
Đóng file đó lại, rồi mở lại, chạy lại thì vẫn cho kết quả như trước. Vậy thì nó đâu còn gọi là ngẫu nhiên nữa.
Không biết các bạn có bị như vậy không.
Thiếu bước khởi tạo. Vầy mới đúng
PHP:
Sub ngaunhien()
  Randomize
  Range("A1").Value = Rnd()
End Sub
 
Upvote 0
Cảm ơn bạn, mình làm được rồi. Nhiều khi sai mà không biết là sai, cứ thế mà dùng mới nguy hiểm chứ.
 
Upvote 0
Web KT

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

Back
Top Bottom