继续讲讲单元格的操作
一、提示用户输入值
Sub SetValue()
Sheets("sheet3").Range("a1") = InputBox("输入一个数字")
End Sub
运行后就会弹出个警告框,提示用户输入内容,输入后就会在A1单元格显示了,但是也存在一个问题,就是取消后呢,原来在A1单元格的内容就会被清空。
所以改良一下,也把“输入数字这个功能再完善一下”。
Sub SetValue()
Dim myInput As Variant
myInput = InputBox("输入一个数字")
If myInput <> "" Then
If IsNumeric(myInput) Then
Sheets("sheet3").Range("a1") = myInput
Else
MsgBox "输入的不是数字"
End If
Else
MsgBox "输入的内容为空值"
End If
End Sub
在判断是否是数字上,如果用WorksheetFunction.IsNumber判断可能会出错。用户在输入123后,WorksheetFunction.IsNumber仍然会识别成文本格式。经过资料查询,解释是这样的:
WorksheetFunction.IsNumber:函数中的数值参数是无法转换的