[算表] 請教VBA 寫法 感謝大神
軟體:exvel
版本:office 365
Sub module4()
Dim Workingfile As String
Dim lastRow As Long
Dim i As Long
Dim cell As Range
Workingfile = ActiveWorkbook.Name
Sheets("raw").Visible = True
Sheets("raw").Activate
lastRow = Cells(1048576, 4).End(xlUp).Row
For i = lastRow To 1 Step -1
Set cell = Cells(i, "D")
If InStr(1, cell.Value, "小計", vbTextCompare) > 0 Then ' 判斷 D 欄儲
存格內容是否包含 "小計" 文字
Rows(i).Delete
End If
If InStr(1, CStr(cell.Offset(0, -3).Value), "#N/A", vbTextCompare) >
0 Then ' 判斷同一列 A 欄的儲存格內容是否包含 "#N/A" 文字
MsgBox ("有股票沒有被定義到,請確認")
End If
Next i
End Sub
請問一下這樣寫法為什麼錯誤?
除錯時會說
If InStr(1, CStr(cell.Offset(0, -3).Value), "#N/A", vbTextCompare) >
0
此處需要物件?
原本的用意是因為下載下來的資料會有小計這個文字
因此想要把D欄裡面有小計文字的列給刪除
再來檢查A欄裡面如果帶有#N/A的文字則msgbox會提醒
是因為刪除掉了所以找不到物件?
感謝大神
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.217.130.6 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1691042534.A.A79.html
→
08/03 14:31,
1年前
, 1F
08/03 14:31, 1F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 4 篇):
Office 近期熱門文章
PTT數位生活區 即時熱門文章