作者mini178 (mini178)
看板Office
标题[算表] 请教VBA 写法 感谢大神
时间Thu Aug 3 14:02:12 2023
软体: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://webptt.com/cn.aspx?n=bbs/Office/M.1691042534.A.A79.html
1F:→ mini178: thank you so much! 08/03 14:31