Excel VBA:多个查找值

时间:2014-04-23 14:43:29

标签: excel-vba vba excel

我有两张纸。需要的结果如sheet1 Required Results列所示,如下所示。通过检查sheet2中的值来填充结果。

Noun      Modifier  Required Results                        Name1   Value1  Name2   Value2  Name3   Value3  Name4      Value4      Name4    Value4
ABRASIVE    BELT    ABRASIVE BELT : 5in X 2in               TYPE    WAFER   WIDTH           LENGTH  5in     THICKNESS   2in       DIAMETER   2m
ABRASIVE    BELT    ABRASIVE BELT : 11in X 6in X 3m         TYPE    LUGGED  WIDTH   11in    LENGTH  6in     THICKNESS   3in       DIAMETER   3m
ABRASIVE    BELT    ABRASIVE BELT : 12in X 7in X 3m         TYPE    LUGGED  WIDTH   12in    LENGTH  7in     THICKNESS   3in       DIAMETER   4m

Sheet 2中

Noun      Modifier  Attribute Name    fill
ABRASIVE    BELT    TYPE                0
ABRASIVE    BELT    WIDTH               1
ABRASIVE    BELT    LENGTH              2
ABRASIVE    BELT    THICKNESS           3
ABRASIVE    BELT    DIAMETER            0
ABRASIVE    ROD     TYPE                0
ABRASIVE    ROD     LENGTH              1

我将以第一行为例说明更新过程。

  • 在sheet2名词栏中搜索来自sheet1的ABRASIVE单词。
  • 如果在sheet2修饰符列中搜索匹配来自sheet1的下一个值BELT。
  • 如果两个值都匹配列Name1,则应在sheet2 Attribute Name列中搜索TYPE。如果相应行的fill列为0,则无需填充sheet1中的值。在表2 WIDTH,LENGTH,THICKNESS中,fill列中的值为1。因此,我将WIDTH,LENGTH,THICHNESS值连接为5in X 2 in。第一行宽度为空。

所以参考第二张,我需要填充尺寸。我在Sheet1中有大约10K记录,在Sheet2中有大约20K参考数据。我尝试应用几个vlookup公式,但我无法实现它。请帮忙。

1 个答案:

答案 0 :(得分:0)

使用多个标识符创建唯一标识符的一种简单方法是将第一列添加到包含公式的两个工作表中:

= “标识符1” &安培; “标识符2” &安培; ...&安培; “标识符-N”

其中“identifier-1”,“Identifier-2”和“identifier-n”是包含各自标识符的单元格地址。

使用带有唯一标识符的VLOOKUP公式,可以检索所需的数据。

在Sheet1 Value1到Value4中填充数据后,可以使用CONCATENATE函数或“&”在Dimension列中连接数据。用于合并值。