我被难住了,我的 Vlookup 搞砸了,我试图将列中的所有值更改为文本,将所有值更改为一般值。这是我的代码,我可以单独进行 vlookup,但我需要它们一个接一个地进行,当第一个 vlookup 公式返回 #N/A 或 #NAME 或 #VALUE 时,我需要第二个 vlookup 公式通过并填写适当的领域,任何建议,我已经尝试了很多不同的变化。这是我现在所拥有的,但错误显示预期列表分隔符或 (,如果我采用 IFERROR 和第二个函数,所有数字值都有效,因为大多数品牌名称可以由序列号第 4 位和第 5 位确定,但有些序列号有字母到位,这就是整个问题,有些甚至有一个字母和一个破折号,A-就是一个例子,我需要能够对所有这些类型进行 VLOOKUP 但不能替换具有准确值的字段,因此第一个 vlookup 会替换所有第二个来填充错误字段。帮助将不胜感激。
这是重现错误的代码。
Sub Work2()
Dim LR As Long
Dim row As String
row = "W2"
row = "W" & x
LR = Range("W" & Rows.Count).End(xlUp).row
Range(Columns(6), Columns(7)).Select
For x = 0 To 2
row = "W" & x
Range("A2:A" & LR).Formula = "=IFERROR(VLOOKUP(VALUE(" & row & "),[gpic.xslx]Sheet1!$R:$S,2,FALSE),"=VLOOKUP(" & row & ",[gpic.xslx]Sheet1!$R:$S,2,FALSE)")"
Next
End Sub
这是可以执行所有数字 Vlookup 字段但不能正确执行字母的代码我尝试使用上面的代码修复它,但就像我说的那样它会产生错误
Sub Work2()
Dim LR As Long
Dim row As String
row = "W2"
row = "W" & x
LR = Range("W" & Rows.Count).End(xlUp).row
Range(Columns(6), Columns(7)).Select
For x = 0 To 2
row = "W" & x
Range("A2:A" & LR).Formula = "=VLOOKUP(VALUE(" & row & "),[gpic.xslx]Sheet1!$R:$S,2,FALSE)"
Next
End Sub
有关附加信息,我查找的工作表中的 R 和 S 具有与品牌相同的所有代码,所以我真的只会得到正确的结果或 #VALUE 我相信。
Column R Column S
1 Ford
2 Dodge
AE Hyundai
这就是 vlookup 的工作方式