在另一个工作簿中查找匹配的单元格值并返回匹配的行内容

时间:2011-07-22 10:10:53

标签: excel search excel-vba lookup vba

我是Excel和VBA的新手,面临以下任务:

我有两个工作簿 - wookbook1.xlsx包含公司名称并将包含一个宏,workbook2.xlsx将保存我需要与workbook1匹配的值。对于workbook1中的每个公司名称,我需要获取在workbook2中找到匹配项的行值。

请帮忙。

2 个答案:

答案 0 :(得分:2)

正如iDevlop在他/她的评论中指出的那样,你不必使用vba而是使用公式。

以下是一些帮助您构建正确公式的链接:

如果您无法获得,请使用您尝试的内容编辑您的第一篇文章,并深入了解您的目标。

此致

答案 1 :(得分:0)

可以使用用户表单搜索工作簿工作表之间的匹配单元格。

双击要搜索的单元格时,用户窗体打开,匹配的单元格可以在用户窗体列表框控件上看到为工作表名称和单元格地址。列表框中选定的单元格地址成为活动单元格。

enter image description here

用户表单的 VBA 代码:

Dim Alan2 As Range, Sayfa As Worksheet
ListBox1.ColumnCount = 2
ListBox1.ColumnWidths = "110;40"
For Each Sayfa In ActiveWorkbook.Worksheets
    For Each Alan2 In Sheets(Sayfa.Name).UsedRange
         If Alan2 = ActiveCell.Value Then
             ListBox1.AddItem Sayfa.Name
             ListBox1.List(ListBox1.ListCount - 1, 1) = Alan2.AddressLocal(0, 0)
          End If
    Next Alan2
    Next Sayfa
Label1.Caption = " " & "Found Records: " & ListBox1.ListCount

Source and sample file address