帮忙做表格利用vba实现数据随机排列

2025-11-21 21:00:51

1、如下图是某次比赛参赛人员名单,现在我们想为这些人员的出场顺序随机排序。

帮忙做表格利用vba实现数据随机排列

2、选中人员姓名单元格区域B2:B12。

帮忙做表格利用vba实现数据随机排列

3、同时按下Alt+F11

帮忙做表格利用vba实现数据随机排列

4、点击sheet1,然后在右侧区域录入vba代码

帮忙做表格利用vba实现数据随机排列

5、按下F5运行代码,就可以将表格数据重新排序。

帮忙做表格利用vba实现数据随机排列

6、如果运行一次之后觉得排序不合适,可以再一次运行代码即可再一次重新排列。

帮忙做表格利用vba实现数据随机排列

7、最后跟大家分享一下本文这里所使用的vba代码,如有需要的朋友可以复制粘贴使用。

'激活工作表事件


'激活工作表,写入除目录外所有表名
'作者:如需帮忙做表格,请百度方方格子
'------------------------------------------
Sub 选区数据打乱顺序()
    Dim ar, i, ii
    Dim tmp, tr, tc
   
    If Selection.Areas.Count > 1 Then Exit Sub
    If Selection.Cells.Count > Columns.Count Then
        MsgBox "您选择的区域过大!"
        Exit Sub
    End If
   
    ar = Selection
   
    Randomize Timer
    For i = 1 To UBound(ar)
        For ii = 1 To UBound(ar, 2)
            tr = Int(Rnd * UBound(ar) + 1)
            tc = Int(Rnd * UBound(ar, 2) + 1)
           
            tmp = ar(tr, tc)
            ar(tr, tc) = ar(i, ii)
            ar(i, ii) = tmp
        Next
    Next
   

    Selection = ar


End Sub
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢