VBA新手继续提问,这是个什么错误?怎么修改?
excel吧
全部回复
仅看楼主
level 10
如图:
代码如下:
Sub test()
Dim sr As String
sr = InputBox("请输入一个字符")
If Asc(sr) >= "a" And Asc(sr) <= "z" Then
MsgBox "您输入的是小写字母"
ElseIf Asc(sr) >= "A" And Asc(sr) <= "Z" Then
MsgBox "您输入的是大写字母"
ElseIf Asc(sr) >= "0" And Asc(sr) <= "9" Then
MsgBox "您输入的是数字"
Else
MsgBox "您输入的是其他字符"
End If
End Sub
2018年01月27日 12点01分 1
level 1
很明显,试着都加上asc(),然后再比较
如果没有错误,不就OK了。
其实,如果都不加asc(),也是可以比较大小的。
2018年01月27日 12点01分 2
谢谢,百度某一个页面上的代码,居然给我错误的代码。
2018年01月27日 12点01分
如果限定只准输入一个字符,怎么修改代码?
2018年01月27日 12点01分
想实现的效果当输入2个以上字符,提示"字符超过2个,请重新输入",点提示框的确定以后回到输入框
2018年01月27日 13点01分
2018年01月27日 13点01分
level 6
vba是结合excel使用表格数据的,没必要在提示框、窗体以及窗体控件上花费太大精力。要把重点放在如何处理表格数据上,就跟学习如何灵活使用excel表格函数一样。因此我建议重点是掌握如何引用表、单元格、区域、循环和数组等。而inputbox、msgbox这些在我看来基本没什么用。
可能我理解也不深。
2018年01月27日 13点01分 3
msgbox很多时候可以提示,避免重复或者错误发生,有的代码时间长了,用起来就忘了,有提示还是方便些,
2018年01月27日 14点01分
回复 吃饭别玩手机🍭 :我只在那些教学般的代码里看到过msgbox,而在实际表格中,从来都没用上过它。有一次我在斗鱼看别人教python,看了差不多一小时,从头到尾都是msgbox,还有那些教c/c++的也是用这个举例
2018年01月27日 14点01分
其实自己用用,不会有那么多msgbox,自己用代码很少有长时间重复性的用,都是达到目的就行
2018年01月27日 14点01分
回复 baifandu2013 :但是if得单行写法很实用
2018年01月27日 14点01分
level 12
那个蓝色幻想看看,我就看这个
2018年01月27日 13点01分 4
level 10
谢谢大家的建议,修改了代码,基本实现了想法,代码如下:
Sub test()
Dim sr As String
Do
sr = InputBox("请输入一个字符")
If Len(sr) = 0 Then
MsgBox "字符不能为空,请重新输入"
ElseIf Len(sr) > 1 Then
MsgBox "字符长度超出2位,请重新输入"
Else
Exit Do
End If
Loop
If sr >= "a" And sr <= "z" Then
MsgBox "您输入的是小写字母"
ElseIf sr >= "A" And sr <= "Z" Then
MsgBox "您输入的是大写字母"
ElseIf sr >= "0" And sr <= "9" Then
MsgBox "您输入的是数字"
Else
MsgBox "您输入的是其他字符"
End If
End Sub
2018年01月27日 14点01分 5
1