我们知道,在大多数编程语言中都有随机数函数。在Excel中,同样存在着这样一个函数—RAND()函数,用于生成随机数。先来看一个最简单的例子:
HSSFSheet sheet1
=
hssfworkbook.CreateSheet(
"
Sheet1
"
);
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
RAND()
"
);
RAND()函数将返回一个0-1之间的随机数,执行后生成的Excel文件如下:
这只是最简单直接的RAND()函数的应用,只要我们稍加修改,就可以作出很多种变换。如
取0-100之前的随机整数,可设置公式为:
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
int(RAND()*100)
"
);
取10-20之间的随机实数,可设置公式为:
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
rand()*(20-10)+10
"
);
随机小写字母:
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
CHAR(INT(RAND()*26)+97)
"
);
随机大写字母:
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
CHAR(INT(RAND()*26)+65)
"
)
随机大小写字母:
sheet1.CreateRow(
0
).CreateCell(
0
).SetCellFormula(
"
CHAR(INT(RAND()*26)+if(INT(RAND()*2)=0,65,97))
"
);
上面几例中除了用到RAND函数以外,还用到了CHAR函数用来将ASCII码换为字母,INT函数用来取整。值得注意的是INT函数不会四舍五入,无论小数点后是多少都会被舍去。
这里只是RAND函数的几个简单应用,还有很多随机数的例子都可以根据这些,再结合不同的其它函数引申出来。
返回目录