关于数字转换成字符的问题 我想把一个随机产生的小于100的整数转换成2个字符,比如59转成“59”,但我还希望当数字小于10时会在前面加“0”,比如8转成“08”。如果用IF来判断的话太麻烦,有没有最简单高效的方法?谢谢. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if len(num)=1 then num='0' & numend if Private Sub Command2_Click() Dim num As Integer num = Int(Rnd() * 10 + 1) MsgBox Format(CStr(num), "00")End Sub 因为我想把很多转换后的字符加起来,我希望可以写成这样:结果=表达式1 & 表达式2 & 表达式3 & 表达式4 & 表达式5 如果用IF的话,不是要用到好多的变量? SoHo_Andy的方法很好啊。我回去试试。谢谢。 Right("0" & int(100*rnd), 2) Private Sub Command1_Click() Dim num As Integer num = Int(Rnd() * 10 + 1) MsgBox Format(CStr(num), "00")End Sub 楼上的Format(CStr(num), "00")就不错啊不知道vb里有没有3目运算如果有的话可以这样,像c或java等等一样v1 = num>9?CStr(num):"0"&CStr(num) v1 =iif(num>9,CStr(num),"0"&CStr(num)) 把小于100的数,大于10的数转换为16进制的数,使用一个涵数。如果小于10的数,可以这样写: if len(num)=1 then num="0"+num end if 这样可以: Format(Int(Rnd() * 100), "00") Private Sub Command1_Click() For a = 0 To 20 b = b & " " & Format(CStr(Int(Rnd() * 99 + 1)), "00") Next a MsgBox bEnd Sub 我试了,用Format 是最好的。 Right("0" & (Rnd() * 100 \ 1), 2) public funtion num( num as interger) if len(num)=1 then num="0"+num end ifend funtion public funtion funNum( num as interger) as string if len(num)=1 then funNum="0"+num end ifend funtion 用if麻烦吗?i don't think so 用DTPicker1日期控件查询日期问题 菜鸟问一段宏 数据库为sql server,怎样用代码建一个有自动编号字段的表? 如何防止用户删除或修改注册表中的键值? 考勤计算? 新手求教:自由文本的定义? 请问一个安装问题(在线等待,高分向送) 在98下,如何VB使用API或其它方法来访问物理内存地址。。 谁能总结select语句所有的用法 这里是不是没高手?这么简单的问题都没能解决? listbox怎么让他多选? 怎样用水晶报表把生成的报表传真出去
num='0' & num
end if
Dim num As Integer
num = Int(Rnd() * 10 + 1)
MsgBox Format(CStr(num), "00")
End Sub
结果=表达式1 & 表达式2 & 表达式3 & 表达式4 & 表达式5
如果用IF的话,不是要用到好多的变量?
Dim num As Integer
num = Int(Rnd() * 10 + 1)
MsgBox Format(CStr(num), "00")
End Sub
不知道vb里有没有3目运算
如果有的话可以这样,像c或java等等一样
v1 = num>9?CStr(num):"0"&CStr(num)
如果小于10的数,可以这样写:
if len(num)=1 then
num="0"+num
end if
Format(Int(Rnd() * 100), "00")
For a = 0 To 20
b = b & " " & Format(CStr(Int(Rnd() * 99 + 1)), "00")
Next a
MsgBox b
End Sub
if len(num)=1 then
num="0"+num
end if
end funtion
if len(num)=1 then
funNum="0"+num
end if
end funtion