作业帮 > 综合 > 作业

VBA从26个英文字母中选取5个进行组合把所有组合的情况用excel VBA编辑并输出到txt文件.

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/16 17:50:34
VBA从26个英文字母中选取5个进行组合把所有组合的情况用excel VBA编辑并输出到txt文件.
sub azpailie()
For i = 97 To 118
For j = i + 4 To 122
For k = 97 To 100
Range(Chr(k) + CStr(m + 1)).Value = Chr(i + n)
n = n + 1
Next k
Range("e" & CStr(m + 1)).Value = Chr(j)
n = 0
m = m + 1
Next j
Next i
msgbox "搞定!复制到记事本保存就可以了."
end sub
要详细点初学者能比较容易看懂的.感激不尽
VBA从26个英文字母中选取5个进行组合把所有组合的情况用excel VBA编辑并输出到txt文件.
你的程序中的m和n都没列出来,应该控制起始位置的,假定这两个值都是0
而且这段代码肯定是有问题的,中间那个For k = 97 To 100内的代码不对
For i = 97 To 118 ------97开始是小写a的ascii码值,97到118就是a到v
For j = i + 4 To 122 ------i+4就是从101开始(101是e,122是z)
For k = 97 To 100 ------a到d
Range(Chr(k) + CStr(m + 1)).Value = Chr(i + n) ------chr是将前面的97这些数值转成具体的小写字母,比如chr(97)就是a,如果是asc("a")就是97,整个这行就是将单元格a1到dm全填入值,这一句实际执行的是类似于range("A1").value="a"
n = n + 1
Next k
Range("e" & CStr(m + 1)).Value = Chr(j)
n = 0
m = m + 1
Next j
Next i