我有一个要求,我有一个 Microsoft 表单,当用户填写它时,它会捕获工作表中的数据。现在,表单由分支组成,这意味着字段会根据某个值发生变化。如下图所示,根据类型 A 或类型 B 填充表单。
我想要做的是,我想根据下面的表格中的“Type A”、“Type B”或“Type C”填充不同的信息。
我尝试的是在工作表类型A中:
=IF(ISBLANK(OfficeForms.Table[@[Content Type]]),"",IF(OfficeForms.Table[@[Content Type]]="Type A",OfficeForms.Table[@[Content Type]],""))
当我使用上面的代码时,发生的情况是它留下了一个空白行,当我将公式拉到其他行时,它给出了#VALUE!错误。
是否可以将公式应用于整个列而不显示 VALUE 错误。我知道这是一个表格,当表格被填写时#VALUE!开始消失,但我不希望它像那样显示。
我必须对不同工作表中的其他内容类型执行相同的操作。有更好的方法吗?任何建议将不胜感激。
谢谢。
如果您有 Microsoft 365 版 Excel,您可以尝试使用 FILTER:
Content Type
并将其用作列名称"Type " & type & " [info field 1]"
type
作为输入Type A
表中输入此内容,您要在其中填充结果:=LAMBDA(type,
LET(
col_headers, HSTACK(
"Id",
"Type " & type & " [info field 1]",
"Type " & type & " [info field 2]"
),
cols, CHOOSECOLS(
OfficeForms.Table,
XMATCH(col_headers, OfficeForms.Table[#Headers])
),
VSTACK(
col_headers,
FILTER(cols, OfficeForms.Table[Content type] = "Type " & type)
)
)
)("A")
我们将为公式命名。
("A")
(即参数)getResults
为名称的命名公式=getResults("A")