cũng hoàn toàn tương tự vậy thôi a tuấn,
đã làm được điều này rồi -> danh sách là chuyện nhỏ,vì ta cũng lưu thứ tự hàng (row) đâu có liên quan ký tự hay số đâu,
cũng hoàn toàn tương tự vậy thôi a tuấn,
đã làm được điều này rồi -> danh sách là chuyện nhỏ,vì ta cũng lưu thứ tự hàng (row) đâu có liên quan ký tự hay số đâu,
Nếu bây giờ tôi muốn có 1 dảy số ngẫu nhiên với điều kiện sau:
-Số đầu tiên nằm trong khoảng từ 1 đến 10
-Số thứ 2 nằm trong khoảng từ 11 đến 20
....
Số thứ 10 nằm trong khoảng từ 99 đến 100
(Dãy số theo nguyên tắc này thì đương nhiên là ko trùng rồi)
Vậy thì làm thế nào nhỉ?
ANH TUẤN
Nhưng dùng RANDBETWEEN thì phải có AddIn, dùng lun rand() - hàm cơ bản có sẳn trong Excel thì khỏi cần anh ah, như sau
VD:
-Số đầu tiên nằm trong khoảng từ 1 đến 10 thì: = 1+ round(rand()*9,0)
-Số thứ 2 nằm trong khoảng từ 11 đến 20 thì: = 11+ round(rand()*9,0)
....
Số thứ 10 nằm trong khoảng từ 91 đến 100 : = 91+ round(rand()*9,0)
Tổng quát hóa
- muốn có số ngẫu nhiên THỰC trong khoảng min-max: =min+rand()*(max-min)
- muốn có số ngẫu nhiên NGUYÊN trong khoảng min-max: =min+round(rand()*(max-min),0)
oh, đó là do bạn kongcom dùng hàm odd() -> trả về số lẻ - muốn sửa lấy số <=100 thì ODD(RAND()*99). TUY NHIÊN lúc này số ngẫu nhiên chỉ là cac số lẻ, ko đạt mục tiêu như atuan đề ra là số ngẫu nhiên từ 1 đến 100...
@TigerTiger đã đổi mới hẳn rồi (nhân đây cám ơn kongcom)-> chỉ cần 1 cột phụ thôi (cột A) và đã cho 10 số ngẫu nhiên trong khoảng 1..100 (có sử dụng đặt name):
+Cột A dùng công thức=ROUND(RAND()*99+1,0) kéo fill tới A100 và đặt 2 name:
PHP:
TIM =IF(COUNTIF(Sheet1!$A$1:$A$100,Sheet1!$A$1:$A$100)=1,ROW(Sheet1!$A$1:$A$100),"")
LIST =SMALL(TIM,ROW(INDIRECT("1:"&COUNT(TIM))))
- tại các ô B1:B10: dùng công thức =INDIRECT("A"&INDEX(LIST,ROW())) -> giá trị cần tìm
*mở rộng tìm hơn 10 giá trị - hết giá trị khác nhau tạo ra - tại cột D (trong file gửi kèm)