|
- Sub test()
- Dim r%, i%
- Dim arr, brr
- Dim d As Object
- Set d = CreateObject("scripting.dictionary")
- With Worksheets("sheet1")
- r = .Cells(.Rows.Count, 1).End(xlUp).Row
- arr = .Range("b1:g" & r)
- For i = 1 To UBound(arr)
- For k = 5 To 2 Step -1
- If Len(arr(i, k)) <> 0 Then
- Exit For
- End If
- Next
- For j = 1 To k - 1
- n = Int(Rnd() * (k - j)) + 1
- temp = arr(i, j)
- arr(i, j) = arr(i, n)
- arr(i, n) = temp
- Next
- dn = ""
- For j = 1 To k
- xm = Left(arr(i, j), 1)
- If InStr(arr(i, 6), xm) <> 0 Then
- dn = dn & Chr(j + 64)
- End If
- arr(i, j) = Chr(j + 64) & Mid(arr(i, j), 2)
- Next
- arr(i, 6) = dn
- Next
- .Range("j1").Resize(UBound(arr), UBound(arr, 2)) = arr
- End With
- End Sub
复制代码 |
|