求解大佬excel生成不重复三列数值的随机组合,并以第三列为尾数值?

发布时间:
2024-09-17 07:51
阅读量:
10

不清楚这个问题是否有实际的使用价值,但使用VBA创建一个宏来实现还是比较方便的。按照题中的要求可见,这样的字符组合共有26×26×10*2=13520种情况。建立如下图所示的Excel工作表:

按【ALT+F11】组合键进入到VBA宏编辑窗口,点击【插入\模块】菜单进入到通用模块编辑窗口,输入如下图所示的代码:

宏的基本思路:利用三重循环(数字、小写字母、大小字母三种字符)创建字符的组合并存入到一个二维数组a中,循环结果后,将数组值直接赋给从E1单元格开始一个区域。

返回Excel工作表窗口,按【Alt+F8】组合键调出【宏】对话框,选择已创建的gcode宏,然后单击 【执行】按钮,即可得到如下图所示的结果:

下面给出宏的文本代码(可复制):

Sub gcode() Dim a(0 To 1352, 0 To 9) As String Dim xrng As Range Set xrng = Range("E1") For i = 0 To 9 m = 0 For j = 65 To 90 For k = 97 To 122 a(m, i) = Chr(j) & Chr(k) & i a(m + 1, i) = Chr(k) & Chr(j) & i m = m + 2 Next Next Next Set xrng = xrng.Resize(1352, 10) xrng.Value = a End Sub

希望我的回答能帮到你。

我是鉴水鱼老师,关注我,持续分享更多的Excel知识与操作技巧。

END