我是一個初學者VBA試圖從一個有用的貢獻者重新利用一些代碼,我遇到了一個麻煩一些,我希望你能幫助我。VBA Range.find錯誤(不xlPart發現與對象變量未設置錯誤)
我有一個表(DATA2)和關鍵字在另一個(關鍵字)註釋字符串。我的目標是搜索評論併爲其分配一個類別,如果找到其中一個關鍵字的話。
下面的代碼工作,因爲我想在某些值(Data = Eric Keyword = Eric)
。但是,在其他值上拋出「Object variable not set」錯誤,我假設因爲沒有找到值(Data=Ericlikespie Keyword = Eric OR Data=Emi No Keyword)
。
任何指針將是有益的。我查看了以前的答案,但大多數似乎與範圍設置問題有關。我意識到,可以手動使用條件格式或大索引+搜索公式來完成所有這些工作,但是我正在尋找更好的方法。
Sub Trail()
'DECS
Dim ws As Worksheet, Map As Worksheet
Dim MapRange As range, UpdateRange As range, aCell As range, bCell As range
On Error GoTo Err
'DEFS
Set ws = Worksheets("DATA2")
Set Map = Worksheets("KEYWORDS")
Set UpdateRange = ws.range("K:K")
Set MapRange = Map.range("A:A")
'COMPS
For Each aCell In UpdateRange
Set bCell = MapRange.Find(What:=aCell, LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not bCell Is Nothing Then
aCell.Offset(0, -1) = bCell.Offset(0, 1)
End If
Next
Exit Sub
Err:
MsgBox Err.Description
End Sub
@Siddharth潰敗感謝您對上面的代碼,它一直是非常有幫助,我學習 – Shakujin
使用踏進代碼拋出錯誤,發現一些值後,就aCell.Offset行if語句 – Shakujin