我正在使用excel 2007 VBA,希望创建一个生成随机数的宏,然后根据生成的数字输出一个字符串。例如,
数字字符串 1 A. 2 B. 3 C. 4 D
如果随机数为4,则输出为D.
我的Excel工作表中有一个类似的表格。
到目前为止,我没有在这方面取得多大成功,任何想法?
答案 0 :(得分:4)
如果您只需要以相同的概率生成A - Z,则直接在工作表上使用=CHAR(65 + RAND()*26)
。
最好远离VBA,因为它使电子表格更难以调试,而且由于VBA在单个线程中工作,现在它可能成为瓶颈。
答案 1 :(得分:2)
在工作表上处理任何字符串的另一种方法是使用
=CHOOSE(rand() * 4 + 1, "One", "Of", "Four", "Strings")
答案 2 :(得分:2)
如果您有一张表,那么您可以使用INDEX
,例如如果List是包含单独单元格中的字符串列表的命名范围,则可以使用此公式随机获取字符串
=INDEX(List,1+RAND()*COUNTA(List))