|
楼主 |
发表于 2014-1-22 08:50
|
显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 snpgfiq 于 2014-1-22 09:01 编辑
这是抽取,但很多地方有错误,请帮忙改下
Private Sub CommandButton2_Click()
Dim M As Integer, N As Integer, SJS As Integer
N = ActiveSheet4.Range("A100").End(xlUp).Row ‘N我想作为统计抽取结果的个数,但语句不对
M = Sheet3.Range("A100").End(xlUp).Row ’M读取抽取后剩余数据,作为下一次抽取的数据源,语句也不对。还有当第一次抽
取时M读取的是不是空
If N <> 0 Then
Do
SJS = Int((M * Rnd) + 1)
Sheet4.Cells(N + 1, 1).Value = SJS
Sheet3.Rows(SJS).Delete
Loop
Else
Do
Range(Sheet2.Cells(1, 1), Sheet2.Cells(100, 1)).Copy Sheet3.Cells(1.1)
SJS = Int((M * Rnd) + 1)
Sheet4.Cells(N + 1, 1).Value = SJS
Sheet3.Rows(SJS).Delete
Loop
End If
End Sub
其中sheet1为显示基表,2为备选数据,3为抽取后剩余,4为抽取结果存放,如果4没用的话,直接结果到1也行
|
|