作业帮 > 综合 > 作业

请问,分层随机抽样的VBA程序谁会写?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/25 19:22:01
请问,分层随机抽样的VBA程序谁会写?

根据楼号分层,随机在各层中抽取等数量的记录,如需源文件,请俩系QQ:495809541
大概说个思路吧
1、高端点用数据字典dir来得到E列的数据,然后能得到去除重复应该有多少个instance;如果不会这个方法就用remove duplicate来去掉重复的得到实际上的instance数
2、根据每个instance数来分别定义同一类的range范围,不要担心范围不连续的问题,一样的道理
3、用random函数得到随机的抽取到的坐标行号,然后根据这个行号抽出这行的所有数据
另外如果你sql没有问题的话用sql写也可以,根据各个结果集来做那个random也可以,方法多了去了,看你自己思路了
再问: 感觉你能写出来,能帮帮我不?
再答: oytommy@sina.com 你的文件发给我吧
再问: 已经发给你了,duqing@china-cloud.com
再答: Sub CommandButton1_Click() Columns("E:E").Select ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("E1"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Sheet1").Sort .SetRange Range("A2:M4265") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Selection.Copy Sheets("Sheet2").Select Columns("O:O").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.Range("$O$1:$O$4265").RemoveDuplicates Columns:=1, Header:=xlYes Range("O2").Select Call RandomDrawing End Sub