VBA 生成带时间戳的随机数字
Function GenPasswd(length, level)
Dim allstr, substr, passwd As String
allstr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()"
Select Case level
Case 1
strlen = 10
Case 2
strlen = 36
Case 3
strlen = 62
Case Else
strlen = 72
End Select
substr = Left(allstr, strlen)
'Debug.Print substr
passwd = ""
For i = 1 To length
passwd = passwd & Mid(substr, Int(Rnd * strlen + 1), 1)
Next
GenPasswd = passwd
End Function
Function GetUnixTime()
GetUnixTime = DateDiff("s", "01/01/1970 00:00:00", Now())
End Function
Function GeneratePassData(strlen As Integer)
Dim str As String
str = Convert10To62(GetUnixTime())
If strlen <= Len(str) Then
GeneratePassData = str
Exit Function
End If
GeneratePassData = GenPasswd(strlen - Len(str), 3) + str
End Function
Function Convert10To62(str As Long)
Dim i, j As Integer
Dim rest As Long
Dim arr()
Dim str1 As String
Dim retStr As String
retStr = ""
rest = str
str1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
ReDim Preserve arr(Len(str1))
For i = 1 To Len(str1)
arr(i) = Mid(str1, i, 1)
Next
While rest <> 0
j = rest - (rest \ 62) * 62 + 1 'vba 角标是从1开始,不是从0开始
retStr = retStr + arr(j)
rest = rest \ 62
Wend
Convert10To62 = StrReverse(retStr)
End Function
VBA 生成带时间戳的随机数字的更多相关文章
- Mysql 生成不重复的随机数字
在网上查找Mysql 生成不重复的随机数字 ,竟然没找到合适的例子. 其实思路很简单,利用MySQL现有的函数,然后进行加工处理,达到预期的结果.可以用到的MySQL函数为rand() ,以及 rou ...
- java基础 数组 Set Map 集合综合应用 生成带0的随机字符串 "00000001" 水果商品号问题
package com.swift.test01; /*有四种水果(苹果,香蕉,西瓜,橘子) 1.给每种水果设定一个商品号,商品号是8个0-9的随机数,商品号码不能重复, 最小值 "0000 ...
- Servlet仿CSDN动态验证码的生成-带数字和字母
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 一.实现的思路: (1)首先,须要创建一个Servlet.该Servlet通过字节型响应给cl ...
- 利用JavaScript生成随机数字!
<!DOCTYPE html> <html> <head> <title>1-99的随机数字</title> <script type ...
- js随机生成[n,m)的数字(不包括m)
Math.random();//随机生成0到1的数字 Math.floor();//取小整 Math.floor(Math.random()*(最大值 - 最小值) + 最小值) 生成2到8的数:Ma ...
- c#随机生成汉字、字母、数字
/// <summary> /// 替换变量 /// </summary> /// <param name="content"></par ...
- java生成6位随机数字
//生成6位随机数字 System.out.println((int)((Math.random()*9+1)*100000)); //生成5位随机数字 System.out.println((int ...
- 微信公众号生成带参数的二维码asp源码下载
晚上闲着没事,一个朋友联系,让帮忙写一个微信公众号利用asp生成带参数的二维码,别人扫了后如果已经关注过该公众号的,则直接进入公众号里,如果没关注则提示关注,关注后自动把该微信用户资料获取到并且保存入 ...
- (C#)生成指定长度的随机字符串的通用方法
.NET(C#)生成指定长度的随机字符串的通用方法,此方法可以指定字符串的长度,是否包含数字,是否包含符号,是否包含小写字母,是否包含大写字母等, 源码: #region 生成指定长度的随机字符串 / ...
随机推荐
- Ionic JPush极光推送二
1.看图解决问题 2.解决出现统计代码提示问题 修改这个java 文件 导入命名空间 import cn.jpush.android.api.JPushInterface; 添加方法 @Overr ...
- MICROSOFT SQL SERVER 2012 序列号
MICROSOFT SQL SERVER DEVELOPER 版(开发版) 序列号:YQWTX-G8T4R-QW4XX-BVH62-GP68Y MICROSOFT SQL SERVER ENTERPR ...
- 简单易学的机器学习算法—SVD奇异值分解
简单易学的机器学习算法-SVD奇异值分解 一.SVD奇异值分解的定义 假设M是一个的矩阵,如果存在一个分解: 其中的酉矩阵,的半正定对角矩阵,的共轭转置矩阵,且为的酉矩阵.这样的分解称为M的奇 ...
- 左神算法书籍《程序员代码面试指南》——1_10最大值减去最小值小于或等于num的子数组数量
[题目]给定数组arr和整数num,共返回有多少个子数组满足如下情况:max(arr[i.j]) - min(arr[i.j]) <= num max(arfi.j])表示子数组ar[ij]中的 ...
- JDBC工具类-DButils(QueryRunner-ResultSetHandler)
简述: DBUtils是Java编程中的数据库操作实用工具,小巧简单实用. DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码. DBUtils三个核心功能: QUeryRunne ...
- python运~算~~符!!!!!!!!!!!
目录: 算术运算, 用于加减乘除等数学运算 赋值运算,用于接收运算符或方法调用返回的结果 比较运算, 用于做大小或等值比较运算 逻辑运算,用于做 与.或.非运算 位运算, 用于二进制运算 每种运算中所 ...
- Python eval()函数的用法
Python eval()函数的用法 eval(str)函数很强大,官方解释为:将字符串str当成有效的表达式来求值并返回计算结果.所以,结合math当成一个计算器很好用. eval()函数常见作用有 ...
- LA3905 Meteor
https://vjudge.net/problem/UVALive-3905 计算出每个点在相框中的时间段,扫描线做即可 关键在如何快速计算每个点在相框中的时间段.对每个点进行运动分解,进入的时间L ...
- CF538G (套路题)
CF538G 题目大意 你有一个长度为\(l\)的指令序列,每个指令为向上,向下,向左,向右中的一种. 机器人会循环执行该序列,即,执行完第\(l\)个指令后,就会重新开始执行第一个指令. 现在,给你 ...
- 20190829 [ Night ] - 玻
又考试 半集训真累…… 老帅哥露出会心的微笑.jpeg +------------+ | 寸 | | 土 分 | | 不 分 | | 让 必 | | 争 | +------------+ 考试过程: ...