Excel 我可以将选定范围内的行(而不是列)中的单元格随机化吗?

Excel 我可以将选定范围内的行(而不是列)中的单元格随机化吗?,excel,vba,excel-formula,Excel,Vba,Excel Formula,我有一个问题列表和答案,我想随机化 每行(不是列)都有一组值,我想随机化每组值的顺序 有什么方法可以用VBA来实现这一点吗 例如: 这就是我现在(以前)所拥有的 这就是我想要的(之后) 随机化行 将完整的代码复制到标准模块中,例如Module1 假设数据从单元格A1开始,并有一行标题(如果没有标题,则将hashreaders设置为False) 另外,调整工作表名称(wsName) 仅运行randomizeRows,必要时调用shuffleRowData 选项显式 Sub-randomizeR

我有一个问题列表和答案,我想随机化

每行(不是列)都有一组值,我想随机化每组值的顺序

有什么方法可以用VBA来实现这一点吗

例如: 这就是我现在(以前)所拥有的

这就是我想要的(之后)

随机化行
  • 将完整的代码复制到标准模块中,例如
    Module1
  • 假设数据从单元格
    A1
    开始,并有一行标题(如果没有标题,则将
    hashreaders
    设置为
    False
  • 另外,调整工作表名称(
    wsName
  • 仅运行
    randomizeRows
    ,必要时调用
    shuffleRowData
选项显式
Sub-randomizeRows()
Const wsName As String=“Sheet1”
常量哈希头为布尔值=真
将wb设置为工作簿:设置wb=ThisWorkbook包含此代码的工作簿
将rg设置为范围:设置rg=wb.Worksheets(wsName).Range(“A1”).CurrentRegion
如果hashreaders,则设置rg=rg.Resize(rg.Rows.Count-1).Offset(1)
尺寸数据作为变量:数据=rg.值
变暗,变长
对于r=1到uBond(数据,1)
shuffleRowData数据,r
下一个r
rg.Value=数据
端接头
子数据(_
ByRef rData作为变体_
可选的ByVal rw(长=1)
变暗温度作为变量,i作为长,j作为长
对于i=UBound(rData,2)到2步骤-1
温度=rData(rw,i)
j=Int(i*Rnd)+1
rData(rw,i)=rData(rw,j)
rData(rw,j)=温度
下一个
端接头

在一行中随机选取两个项目,交换它们,重复x次您知道如何在VBA宏中执行此操作吗?非常感谢!这很有魅力
1   A1, B1, C1, D1, E1, ...
2   A2, B2, C2, D2, E2, ...
3   A3, B3, C3, D3, E3, ...
4   ...
1   B1, E1, C1, A1, D1, ...
2   A2, D2, E2, B2, C2, ...
3   E3, C3, B3, D3, A3, ...
4   ...