Arrays 如何从列表中查找相应的值?

Arrays 如何从列表中查找相应的值?,arrays,google-sheets,google-sheets-formula,array-formulas,gs-conditional-formatting,Arrays,Google Sheets,Google Sheets Formula,Array Formulas,Gs Conditional Formatting,谷歌表单-根据列表,需要将一些值转换为相应的名称 例如:工作表具有类别名称,我需要将其转换为类别ID。 在另一个选项卡中,有一个具有名称ID对的查找表 如何编写一个公式,扫描查找表中的匹配项,然后获取右侧下一个单元格中的值并输入 基本上,为列表中的所有项目提供相应的ID值 名单: 小部件 小部件 小玩意 小部件 配件 小玩意 小玩意 小玩意 小部件 小部件 小部件 查找表: 附件| 29 小工具| 34 小玩意| 72 因此,我需要: 小部件34 小部件34 小玩意72 小部件34 附

谷歌表单-根据列表,需要将一些值转换为相应的名称

例如:工作表具有类别名称,我需要将其转换为类别ID。 在另一个选项卡中,有一个具有名称ID对的查找表

如何编写一个公式,扫描查找表中的匹配项,然后获取右侧下一个单元格中的值并输入

基本上,为列表中的所有项目提供相应的ID值

名单:

  • 小部件
  • 小部件
  • 小玩意
  • 小部件
  • 配件
  • 小玩意
  • 小玩意
  • 小玩意
  • 小部件
  • 小部件
  • 小部件
查找表:

  • 附件| 29
  • 小工具| 34
  • 小玩意| 72
因此,我需要:

  • 小部件34
  • 小部件34
  • 小玩意72
  • 小部件34
  • 附件29
  • 小玩意72
  • 小玩意72
  • 小玩意72
  • 小部件34
  • 小部件34
  • 小部件34

实际列表比3个示例长得多,因此手工操作非常繁琐。我确信答案就在那里…

找到了。在把我的头发撕了一点之后

=VLOOKUP(P2,CF:CG,2,真)

其中CF和CG列包含类别名称:类别ID值。类别ID是范围中的第二列,因此为“2”。它是按字母顺序排序的,因此是“TRUE”

现在,一路复制这个公式破坏了引用,因为谷歌表单“有益地”自动增加了公式

使用Control-Shift-V粘贴公式而不使用“自动增量”也会破坏结果,因为查看第2行会“卡住”(无论公式复制到多远)

解决方案:使用“$”为查找“锁定”单元格引用,但允许源单元格引用递增:

=VLOOKUP(P2,$**CF:$**CG,2,真)

问题#2:任何没有值的单元格都会生成“N/a”错误。这将在以后插入问题

解决方案:添加IFNA包装器:

=IFNA(VLOOKUP(P2,$CF:$CG,2,TRUE),“”)

(执行VLOOKUP;如果结果不是N/A,则显示结果;如果结果是N/A,则不显示任何内容(“”)。

使用此数组公式:

=ARRAYFORMULA(IFNA(VLOOKUP(P2:P, CF:CG, 2, 0)))