QQ网名大全

WPS如何将一排单元格内容组合成一个随机顺序的文本?

楼主,你好!这个是没法使用函数公式解决的,还是建议楼主使用VBA程序进行处理。(由于WPS个人免费版不能使用VB功能,那就改用其他版本进行处理)

(一)VBA程序代码如下:(写代码不易,望笑纳)

Sub ZuHe_xxx()
Dim i1, i2, i3, MyArray(100), str, Rn
On Error Resume Next
Set Mysheet1 = ThisWorkbook.Worksheets("Sheet1")
Mysheet1.Range("H1:H1000") = ""

For i1 = 1 To 1000
 str = ""
 Randomize       '初始化随机数
 Erase MyArray   '初始化数组
 For i2 = 1 To 7
  If Mysheet1.Cells(i1, i2) <> "" Then
   For i3 = 0 To @@
    Rn = Int(Rnd() * 7 + 1)  '生成1-7的随机数
    If UBound(Filter(MyArray, Rn)) <> 0 Then  '如果生成的随机数不重复,则
     MyArray(i2) = Rn
     str = str & Mysheet1.Cells(i1, Rn)
     Exit For
    End If
   Next
  End If
 Next
 Mysheet1.Cells(i1, 8) = str
Next

End Sub

(二)程序的运行结果如下截图:

【注】程序运行之前请做好数据备份,以免丢失。

佚名
2024-11-15 21:33:42
最佳回答
类似问题(10)