在excel VBA中如何判定单元格中的数据类型是整数还是其他呢?
如果可以大虾帮我写段代码吧,我写的老是提示错误13,问题1.主要用意是对a列里面的数值进行判定,如果是整数且大于1那就在本行执行插入一行,如果不是整数类型或为空值的就不操...
如果可以大虾帮我写段代码吧,我写的老是提示错误13,
问题1.主要用意是对a列里面的数值进行判定,如果是整数且大于1那就在本行执行插入一行,如果不是整数类型或为空值的就不操作
问题2.想要返回被选定行的行数值该如何写代码?
先谢谢了!~
你的这两个代码我都试过,怎么还是有错误13:类型不匹配,难道我这边程序的问题?呵呵
这里要说明下的是a列数据中有字符主要是区分数与字符!~忘了说了!~呵呵前辈这里所说的int()应该是判定数值是不是整数的!没有考虑是不是字符呢!~~呵呵 展开
问题1.主要用意是对a列里面的数值进行判定,如果是整数且大于1那就在本行执行插入一行,如果不是整数类型或为空值的就不操作
问题2.想要返回被选定行的行数值该如何写代码?
先谢谢了!~
你的这两个代码我都试过,怎么还是有错误13:类型不匹配,难道我这边程序的问题?呵呵
这里要说明下的是a列数据中有字符主要是区分数与字符!~忘了说了!~呵呵前辈这里所说的int()应该是判定数值是不是整数的!没有考虑是不是字符呢!~~呵呵 展开
展开全部
在VBA里面,可以使用VarType获得变量以及单元格的数据类型,数值类型值为5(vbDouble)、空类型为0(vbEmpty)、字符串类型为8(vbString )。
例子代码1:显示A1单元格的数据类型
Sub test()
MsgBox VarType([a1])
End Sub
例子代码2:判断A1单元格数据类型是否数值
Sub test()
If VarType([a1]) = vbDouble Then
MsgBox "A1是数值类型"
Else
MsgBox "A1不是数值类型"
End If
End Sub
实际上VB还有vbLong、vbDecimal等类型,但单元格为数值时默认是vbDouble。
展开全部
那你试试下面这样,先判断是否为数
1,
Sub qgrmdtj()
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsNumeric(Cells(i, 1)) Then
If Cells(i, 1) = Int(Cells(i, 1)) And Cells(i, 1) > 1 Then
Rows(i).Insert
End If
End If
Next
End Sub
--------------------------
2,
Sub qgrmdtj()
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsNumeric(Cells(i, 1)) Then
If Cells(i, 1) = Int(Cells(i, 1)) And Cells(i, 1) > 1 Then
msgbox i'弹出消息框显示行数
End If
End If
Next
End Sub
1,
Sub qgrmdtj()
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsNumeric(Cells(i, 1)) Then
If Cells(i, 1) = Int(Cells(i, 1)) And Cells(i, 1) > 1 Then
Rows(i).Insert
End If
End If
Next
End Sub
--------------------------
2,
Sub qgrmdtj()
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsNumeric(Cells(i, 1)) Then
If Cells(i, 1) = Int(Cells(i, 1)) And Cells(i, 1) > 1 Then
msgbox i'弹出消息框显示行数
End If
End If
Next
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询