暱稱: 阿佐 頭銜: 上班無聊打怪去
中學生
- 帖子
- 108
- 主題
- 1
- 精華
- 0
- 積分
- 113
- 點名
- 0
- 作業系統
- Win 10
- 軟體版本
- Office 2016
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 臺灣
- 註冊時間
- 2017-9-7
- 最後登錄
- 2019-2-27
 
|
回復 14# hugh0620
抱歉,我稍微整理以上各位大大表述的意見。
Find函數如果該範圍找不到你的目標的時候,
函數會回饋「Nothing」,
而既然Set A = Nothing,
當然A就不會有Row的屬性,
所以程式才會跳錯,
這就是你問題的所在。
所以為了避免這個問題,
在執行 A = A.Offset(0, 0).Row 之前先檢查A是否存在,
若不存在則跳出訊息並停止程式運作。- Set A = 工作表7.Range("G3:G10000").Find(ST)
- If A Is Nothing Then
- MsgBox "A部分輸入的日期不存在": Exit Sub
- Else
- A = A.Offset(0, 0).Row
- End If
- Set B = 工作表7.Range("G3:G10000").Find(ED)
- If B Is Nothing Then
- MsgBox "A部分輸入的日期不存在": Exit Sub
- Else
- B = B.Offset(0, 0).Row
- End If
複製代碼 |
|