[算表] 請教VBA 寫法 感謝大神

看板Office作者 (mini178)時間1年前 (2023/08/03 14:02), 編輯推噓0(001)
留言1則, 1人參與, 1年前最新討論串1/4 (看更多)
軟體: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
thank you so much!
08/03 14:31, 1F
文章代碼(AID): #1aoqBcfv (Office)
文章代碼(AID): #1aoqBcfv (Office)