2016-03-25 194 views
1

我应该下载一个包含客户ID(约100)的工作表(称之为第一个工作簿)。我们有一个不同的工作簿(workbook2),其中包含所有客户ID和这些客户的名称。我想根据第二个工作簿将这些客户ID从工作簿1翻译成他们的预期姓名。我认为迄今为止我有一个相当不错的基础,但是我已经调试过了。我们欢迎所有的建议!比较VBA中的两列

Option Explicit 

Sub getcompanyname() 

Dim wsll As Worksheet 
Dim wsd As Workbook 

Dim c As Range 
Dim d As Range 

Dim lastRow2 As Integer 
lastRow2 = Workbooks("MatchWerks Customer Quick Reference.xlsx").Worksheets("Sheet1").UsedRange.Rows.Count 

Dim lastRow As Integer 
lastRow = ActiveSheet.UsedRange.Rows.Count 

Set wsd = Workbooks.Open("C:\Users\Dylan Hoffman\Documents\SugarSync Shared Folders\Support\Customer Support\MatchWerks Customer Quick Reference.xlsx") 
Set wsll = ThisWorkbook.Worksheets("customtableitem_customtable_mbs") 

For Each c In ThisWorkbook.Worksheets("customtableitem_customtable_mbs").Columns("C1:C" & lastRow).Cells 

    For Each d In Workbooks("MatchWerks Customer Quick Reference.xlsx").Worksheets("Sheet1").Columns("A3:A" & lastRow2).Cells 
    If c = d Then 
    c = d.Offset(0, 1) 
    End If 
    Next d 
Next c 

End Sub 

回答

0

基本上,你正试图通过查询获取数据。你应该看到这个样本在这response

+0

哇我不知道你可以在Excel中使用SQL!所以你说的是我应该做两个工作簿之间的内部连接? – Dylan

+0

该示例适用于一个工作簿中的表(一个数据库用于您的目的)。我认为你可以将目标工作表(使用vba)复制到工作簿(数据库)源代码和查询中,就像我在其他文章中解释的一样。 –

+0

好吧,你提供的那个示例混乱,谢谢你的输入 – Dylan