软件:Exce2016
电脑:华为MateBook14
系统:Windows10
1、打开文件,进入【开发工具】点击【visual basic】。
2、打开需要点名的所在sheet表,并输入代码,并单击【保存】。
3、弹出另存为,设置保存类型,将文件保存为xlsm。
4、在【开发工具】-【插入】一个按钮。
5、在弹出的“指定宏,选择sheet”点名,并点击【确定】。
6、更改控件上的名称“点名,并设置基本格式”,后点击【即可】。
var isRun=truevar a = ["张三","李四","王五","赵六"]
var a2 = new Array()
function action(str){
var s = document.getElementById("bt").value
if(s=="开始"){
isRun=true
run()
document.getElementById("bt").value="结束"
}else{
isRun=false
document.getElementById("bt").value="开始"
}
}
function run(){
var i = Math.floor(Math.random() * a.length+ 1)-1
document.getElementById("show").innerHTML=a[i]
if(isRun==false){
var b =true
for(var j in a2){
if(a2[j]==i){
b=false
}
}
if(b){
a2[a2.length]=i
return
}
}
setTimeout("run()",10)
}
可以给你一个思路在php有一个随机函数rand(min,max),min和max分表是设定的随机范围,当然可以不给他们值,那么php会在0-rand_max之间随机取值,在某些平台下(例如 Windows)RAND_MAX 只有 32768。
你可以先定义一个数组,然后循环取出随机的值,保存到数组里面,这么多数据,相信重复的概率是很小了。然后在取出的时候,先获取数组的长度,然后以0为min,数组长度-1为max进行随机获取数据,打印出数组中下标元素为该数的数据,这就是你想要的了。
JS中同上,不过JS随机是用Math.random(),它只会随机0-1之间的数据,所以你要获取多的,最好在后面*10000等你想要的数据,EG:Manth.random()*1000000,其它的原理同PHP
如果需要知道详细代码,请追问,谢谢。
建议自己先试试!