2013-07-31 44 views
-1

中输入的。我被困住了,我的Vlookup搞砸了,我试图将列中的所有值更改为文本,并将所有值更改为常规。这是我的代码,我可以单独做vlookup,但我需要他们一个接一个地做,当第一个vlookup公式返回#N/A或#NAME或#VALUE时,我需要第二个vlookup公式来完成并填充相关领域,任何建议,我已经尝试了这么多不同的变化。这里是我现在的东西,但错误说预期列表分隔符或(如果我采用IFERROR和第二个功能所有数值的工作原理,因为大多数品牌名称可以由序号第4和第5位数字确定,但一些连续字母有字母到位,这是整个问题,有些甚至有一个字母和破折号,A-是一个例子,我需要能够VLOOKUP所有这些类型,但不能取代具有准确值的字段,所以第一次查找替换所有第二进来填补出错fiels。帮助将非常感激。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字段,但可以将代码做T字母正确 我试图与上面的代码修复它,但就像我说的它会产生一个错误

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 

这是vlookups如何工作

回答

0
A  B  C  D  E  F 
    1  Adam  1  Adam 
    2  Peter  3  John 
    3  John  4  Phil 
    4  Phil  6  #N/A 

    A  B  C  D  E  F 
    1  Adam  1  Adam  6  Peter 
    2  Peter  3  John 
    3  John  4  Phil 
    4  Phil  6  Peter 

细胞D1包含下式:= IF(ISERROR(INDEX(B:B,MATCH(C1,A:A,0))), INDEX(F:F,MATCH(C1,E:E,0)),INDEX(B:B,MATCH(C1,A:A,0))) 将其复制下来。

相关问题