如何知道单元格的数据types
我一直卡在这里一会儿,并得到运行时错误13 – types不匹配。
Dim Qty, ItemCost, Tot Qty = wi.Range("C" & i).Value2 'Qty ItemCost = wi.Range("K" & i).Value2 'Item Cost Tot = CInt(Qty) * CInt(ItemCost)
当我在C和K列单元格上尝试IsNumeric时,它们是正确的,但仍然出现这个错误。
我也试过:
Tot = Qty * ItemCost
和
Tot = CDbl(Qty) * CDbl(ItemCost)
和
Tot = Qty * CInt(ItemCost)
以及将其转换为整数或双数据types的其他不同组合。
我也手动格式化Col C和K作为数字。
仍然错误仍然存在。 我不知道该怎么做我错了?
你需要2件事情:
- 一个更好的方法来做一个数字variables
- 一个更好的方法来看看发生了什么问题
考虑:
Sub dural() Dim Qty As Long, Qty_Text As String, wi As Worksheet, i As Long Set wi = ActiveSheet i = 1 Qty_Text = Trim(wi.Range("C" & i).Text) On Error GoTo wtf Qty = CLng(Qty_Text) On Error GoTo 0 Exit Sub wtf: MsgBox wi.Name & vbCrLf & i & vbCrLf & wi.Range("C" & i).Text On Error GoTo 0 End Sub