我不斷收到錯誤運行時錯誤“13”:型別不匹配。我檢查過我從中提取的欄位中沒有非日期值;他們要么有約會,要么顯示為(空白)。我檢查過日期欄位的格式是否為日期欄位,并且計算欄位是否為數字。
當我在作業表本身而不是 VBA 中嘗試時,此計算有效。我不知道它不喜歡什么。
Sub Date_Calc()
Dim Result, RowNo As Long
Dim FirstDate, SecondDate As Date
Dim Ws As Worksheet: Set Ws = Sheets("Sheet1")
RowNo = 2
Column1 = 1
Column2 = 2
Column3 = 3
Do Until RowNo = 10000
FirstDate = Ws.Cells(RowNo, Column1)
SecondDate = Ws.Cells(RowNo, Column2)
If FirstDate <> "" And SecondDate <> "" Then
Ws.Cells(RowNo, Column3) = Day(SecondDate) - Day(FirstDate)
RowNo = RowNo 1
End If
Loop
End Sub
uj5u.com熱心網友回復:
嘗試使用IsDate
來驗證您對 的輸入Day
。
Dim Ws As Worksheet
Set Ws = Sheets("Sheet1")
Dim Column1 As Long, Column2 As Long, Column3 As Long, RowNo As Long
Column1 = 1
Column2 = 2
Column3 = 3
For RowNo = 2 to 10000
Dim val1 As Variant, val2 As Variant
val1 = Ws.Cells(RowNo, Column1).Value
val2 = Ws.Cells(RowNo, Column2).Value
If IsDate(val1) And IsDate(val2) Then
Ws.Cells(RowNo, Column3).Value = Day(val1) - Day(val2)
End If
Next
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/536514.html
標籤:擅长VBA
上一篇:根據單元格顏色和字串定義范圍
下一篇:回圈計數器以增加變數值