我有一個設置與板材中的列列d和重置價值的唯一標識符F.我需要:Excel的VBA - 搜索,偏移,更換
- 遍歷所有序列號在片
settings
列d - 找到具有相同序列的行中片
test
塔A - 得到
settings
F列 - 替換值替換在列B中的數據上
test
片,在同一行中作爲先前擊發阻鐵高等教育委員會串行
聽起來很簡單,但與下面的代碼定義for
和to
語句時,我得到一個類型不匹配錯誤。
Sub Replace_List()
Dim rList As Range, cell As Range, n As Long
Application.ScreenUpdating = False
With ThisWorkbook.Sheets("Settings")
Set rList = .Range("D4", .Range("D" & Rows.Count).End(xlUp))
End With
For Each cell In rList
For n = cell.Value To cell.Offset(0, 2).Value Step 1
ThisWorkbook.Sheets("test").Columns("B:B").Replace What:=n, _
Replacement:=cell.Offset(0, 2).Value, _
LookAt:=xlWhole
Next n
Next cell
Application.ScreenUpdating = True
MsgBox "Replaced all items from the list.", vbInformation, "Replacements Complete"
End Sub
任何指針,我在做什麼錯誤在這裏讚賞。 謝謝, A2K
編輯 如下截圖:
當cell崩潰時'cell.Value'和'cell.Offset(0,2).Value'的值是什麼? – YowE3K
'cell.value'是它應該查找的序列號,而'cell.offset(0,2).value'是替換值 – Armitage2k
但是它崩潰時的值是什麼?例如。它是否大於2,147,486,647? – YowE3K