首页 文章

根据与行 Headers 关联的单元格值返回列 Headers

提问于
浏览
-2

这是我目前的设置 .

工作表Sheet1:

行A2:A5我列出了:

Dog 1
Dog 2
Dog 3
Dog 4

列B1:E1我已经列出了

Black
White
Brown
Grey

例如,在我列出的第一行(来自B2:E2):必需,必需,标识,标识符

在Sheet2上,设置如下:

Cell A1有一个1-4的下拉列表

Cell B1有“必需”

单元格C1有“标识符”

目标:我的目标是,无论我从sheet2上的下拉列表中选择哪种狗,我都希望公式扫描sheet1!A2:A5,找到狗然后扫描与该狗相关的水平行,识别出“必需”和“标识符”并提取列 Headers 并在sheet2上的Required&Identified下组织它们 .

例:

我从下拉列表中选择狗1(在sheet2上),它将查找sheet1!A2:A5然后识别狗1位于A2上,然后查找水平识别单元格B2中的“required”和“identifier”:E2,然后它将提取列 Headers “黑色”和“白色”,并在sheet2中的appropraite字段(“required” - cell B1)(“identifier” - cell C1)下输入这些 Headers .

我非常感谢你对此的帮助 . 解决方案可以是VBA或公式 . 非常感谢你提前 .

1 回答

  • 0

    您可以首先在工作表2上的 A1 单元格上放置"Data Validation"并将列表限制为 A2:A5 ,或者您可以选择整个 A:A 范围并选择"Ignore Blanks"选项 . 这将允许您通过相应的狗的下拉菜单选择 A1 的值 .

    然后在 B1 上,您将放置以下数组公式:

    =StringConcat(", ",IF(INDIRECT("Sheet1!B"&(MATCH(A2,Sheet1!A2:A5,0)+1)&":E"&(MATCH(A2,Sheet1!A2:A5,0)+1))="REQUIRED",Sheet1!$B$1:$E$1,""))
    

    请注意,按 CTRL SHIFT ENTER 输入 . 除非将"REQUIRED"更改为"IDENTIFIER",否则您将为 C1 复制此项 .

    StringConcat 是由Chip Pearson制作的自定义UDF,您可以在此处找到:http://www.cpearson.com/excel/stringconcatenation.aspx . 将他提供的代码复制到VBA模块中,即可开始比赛 .

相关问题