mit*_*air -2 excel vba excel-vba
我们是否有任何解决方案可以使此代码正常工作
Sub FindSum()
Dim Euro1 As String
Euro1 = InputBox("", "")
ActiveCell.FormulaR1C1 = "=RC[-1]*" & Euro1.Value
End Sub
Run Code Online (Sandbox Code Playgroud)
预期:此代码将从字段中选择值,并将其与Inputbox中提供的值相乘.
Run Code Online (Sandbox Code Playgroud)Dim Euro1 As String
你宣称Euro1是一个String.字符串是VBA中的原始类型,原始类型没有可以调用的成员,这意味着:
Debug.Print Euro1.Value
Run Code Online (Sandbox Code Playgroud)
是非法的.
如果你有String,你可以简单地使用它:
ActiveCell.FormulaR1C1 = "=RC[-1]*" & Euro1
Run Code Online (Sandbox Code Playgroud)
这肯定会导致其他问题:您需要阅读用户输入验证.系统地将用户输入视为有效的代码总是会遇到问题.在这里,我们看到Excel无法计算其值=RC[-1]*Hi There I'm some invalid input.
IsNumeric如果您要将字符串用作数字,请考虑使用内置函数来确定字符串是否包含可被视为数字的值.
If IsNumeric(Euro1) Then
ActiveCell.FormulaR1C1 = "=RC[-1]*" & Euro1
Else
MsgBox "Invalid input!"
End If
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
118 次 |
| 最近记录: |