Vlookup表将表单复制到其他工作簿vba

时间:2018-05-02 15:14:05

标签: excel excel-vba vlookup worksheet vba

我正在使用两本工作簿。在一个工作簿中,我有一个模板和一个查找表。在另一本工作簿中,我有很多只有少数名为alpha的工作表。

查找表有一个用于alpha表名称的列,另外两列包含要重命名工作表的值。

我基本上需要复制模板并将其粘贴到第二个工作簿中,用于名称中包含alpha的每个工作表,并将模板重命名为查找表中的值。我目前在让vlookup工作时遇到问题。虽然ws.name正在返回正确的值,但是我的" a"即使第一列应该是1比1匹配,值也不匹配。

到目前为止,我的代码如下。

For Each ws In ActiveWorkbook.Sheets

    If LCase(ws.Name) Like "*alpha*" Then

                a = Application.WorksheetFunction.VLookup(ws.Name, Sheet1.Range("A2:D24"), 1)

                Debug.Print ws.Name
                Debug.Print a 
     End If
Next ws

1 个答案:

答案 0 :(得分:0)

可能是因为你缺少vlookup的最后一个参数,导致函数在与你的范围不匹配时返回aproximate值,所以你需要在关闭括号之前加上“,FALSE”