Xin trợ giúp về tìm kiếm ngẫu nhiên trong Excel (1 người xem)

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

Người dùng đang xem chủ đề này

lakoda

Thành viên mới
Tham gia
24/12/11
Bài viết
48
Được thích
6
e có 1 file excel có 4089 dòng được đánh số thứ tự
b1. E lấy ngẫu nhiên một số từ 1-4089
Giả sử e lấy được số thứ 5 tương ứng với STT 5
B2. Số thứ 2 được lấy theo quy luật n2= STT của số thứ nhất 2*k (trong đó k là một hằng số)
Số thứ 3 = STT của số thứ 2 3*k
số thứ n= STT của số thứ n-1 n*k

Nhờ các bác hướng dẫn giúp em chọn tự động ạ

Trân trọng cảm ơn
 

File đính kèm

Lần chỉnh sửa cuối:
mình viết thiếu. Nếu chọn được số theo quy luật thi đánh số 1 vào mục Chọn mẫu
Ví dụ: với k=6 và chọn n1=3 thì đánh số 1 vào Mục chọn mẫu ứng với STT 3; thì n2=3 2*6=15 khi đó ta sẽ đánh số 1 vào ô chọn mẫu ứng với STT 15, tương tự cho n3,n4...
 
Lần chỉnh sửa cuối:
Upvote 0
mình viết thiếu. Nếu chọn được số theo quy luật thi đánh số 1 vào mục Chọn mẫu
Ví dụ: với k=6 và chọn n1=3 thì đánh số 1 vào Mục chọn mẫu ứng với STT 3; thì n2=3+2*6=15 khi đó ta sẽ đánh số 1 vào ô chọn mẫu ứng với STT 15, tương tự cho n3,n4...
Đưa cái File lên đây!
 
Upvote 0
e có 1 file excel có 4089 dòng được đánh số thứ tự
b1. E lấy ngẫu nhiên một số từ 1-4089
Giả sử e lấy được số thứ 5 tương ứng với STT 5
B2. Số thứ 2 được lấy theo quy luật n2= STT của số thứ nhất + 2*k (trong đó k là một hằng số)
Số thứ 3 = STT của số thứ 2 + 3*k
số thứ n= STT của số thứ n-1 + n*k

Nhờ các bác hướng dẫn giúp em chọn tự động ạ

Trân trọng cảm ơn
Bạn thử công thức này tại ô C2 sau đó copy cho cả cột
Mã:
=IF((MAX($C$1:$C1)+1)*$E$1+((MAX($C$1:$C1)+1)*(MAX($C$1:$C1)+2)/2-1)*$G$1=A2,MAX($C$1:$C1)+1,"")
Trong đó:
$E$1 là số ngẫu nhiên
$G$1 là hằng số k
 
Upvote 0
Mình đã tải lên file và đã lấy vd với n1= STT 3 và k=6
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Bạn thử công thức này tại ô C2 sau đó copy cho cả cột
Mã:
=IF((MAX($C$1:$C1) 1)*$E$1 ((MAX($C$1:$C1) 1)*(MAX($C$1:$C1) 2)/2-1)*$G$1=A2,MAX($C$1:$C1) 1,"")
Trong đó:
$E$1 là số ngẫu nhiên
$G$1 là hằng số k

Mình đã làm thử nhưng nếu như n1=3 và k=6 thì n2 sẽ = 15 nhưng của bạn bằng 18. Vậy có sai chỗ nào ko?
 
Lần chỉnh sửa cuối:
Upvote 0
Mình đã làm thử nhưng nếu như n1=3 và k=6 thì n2 sẽ = 15 nhưng của bạn bằng 18. Vậy có sai chỗ nào ko?
Lúc nãy tôi đọc không kỹ, nếu vậy thì đơn giản hơn nữa
Mã:
=IF($E$1+((MAX($C$1:$C1)+1)*(MAX($C$1:$C1)+2)/2-1)*$G$1=A2,MAX($C$1:$C1)+1,"")
 
Upvote 0
Vẫn chưa được bạn ah, vẫn với vd trên lấy n1=3, k=6
n2= 3 2*6 = 15
n3= 3 3*6 = 21
n4= 3 4*6 = 27
n5= 3 5*6= 33
...
khi đó mình sẽ đánh số 1 vào các STT tương ứng là 3,15,21,27,33,...
 
Lần chỉnh sửa cuối:
Upvote 0
Vẫn chưa được bạn ah, vẫn với vd trên lấy n1=3, k=6
n2= 3 + 2*6 = 15
n3= 3 + 3*6 = 21
n4= 3 + 4*6 = 27
n5= 3 + 5*6= 33
...
khi đó mình sẽ đánh số 1 vào các STT tương ứng là 3,15,21,27,33,...

Nhập F1=3, F2=6 rồi chạy thử Sub này coi sao nhé
PHP:
Public Sub GPE()
Dim sArr(), dArr(), I As Long, Num As Long, K As Long, Rws As Long, R As Long
Num = [F1].Value
K = [F2].Value
sArr = Range([A2], [A2].End(xlDown))
Rws = UBound(sArr, 1)
ReDim dArr(1 To Rws, 1 To 1)
dArr(Num, 1) = 1
R = K * 2 + Num
dArr(R, 1) = 1
For I = 3 To UBound(sArr, 1)
    R = R + K
    If R > Rws Then Exit For
    dArr(R, 1) = 1
Next I
[C2].Resize(Rws) = dArr
End Sub
 
Upvote 0
Vẫn chưa được bạn ah, vẫn với vd trên lấy n1=3, k=6
n2= 3 + 2*6 = 15
n3= 3 + 3*6 = 21
n4= 3 + 4*6 = 27
n5= 3 + 5*6= 33
...
khi đó mình sẽ đánh số 1 vào các STT tương ứng là 3,15,21,27,33,...
Bạn xem lại yêu cầu ở bài #1 của bạn
số thứ n= STT của số thứ n-1 + n*k
Như vậy khi n1 = 3, k = 6 các số sẽ là
n1 = 3
n2 = n1 + 2*k = 3 + 2*6 = 15
n3 = n2 + 3*k = 15 + 3*6 = 33
n4 = n3 + 4*k = 33 + 4*6 = 57

Vậy bạn hãy xác định lại chính xác bạn muốn tính như thế nào.
Nếu như yêu cầu là bài #9 này thì lại quá đơn giản rồi.

Còn vụ số 1 hay số thứ tự thì sửa không khó.
 
Upvote 0
Trả biết có dúng không
 

File đính kèm

Upvote 0
Bạn xem lại yêu cầu ở bài #1 của bạn

Như vậy khi n1 = 3, k = 6 các số sẽ là
n1 = 3
n2 = n1 2*k = 3 2*6 = 15
n3 = n2 3*k = 15 3*6 = 33
n4 = n3 4*k = 33 4*6 = 57

Vậy bạn hãy xác định lại chính xác bạn muốn tính như thế nào.
Nếu như yêu cầu là bài #9 này thì lại quá đơn giản rồi.

Còn vụ số 1 hay số thứ tự thì sửa không khó.

Xin lỗi, mình ghi nhầm công thức. Sửa lại sẽ là:

khi n1 = 3, k = 6 các số sẽ là
n1 = 3
n2 = n1 2*k = 3 2*6 = 15
n3 = n1 3*k = 3 3*6 = 21
n4 = n1 4*k = 3 4*6 = 27

Bạn sửa lại giúp mình nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom