使用表格标题作为单元格中的内容

问题描述 投票:0回答:2

我使用列标题标题作为另一个单元格中逗号分隔的内容。我使用的是 Excel 2016。我有一个名为 StudentCourse 的表格,为了更好的说明,请参阅下面的示例布局:

[姓名][数学][地理][生物][费用][修复]
Ram 非常差 好 好 无薪 紧急:数学、费用
大坝 中立 好 坏 付费 紧急:数学、生物
Rik 好 好 好 已付薪 确定:不紧急
Nik 好 好 好 部分紧急:费用

主题列的值来自下拉菜单,其中包含选项 Good、Neutral、Bad 和 Very Bad,如果选择值 Neutral、Bad 或 Very Bad,则Fixes 列将更新带有前缀 Urgent: 和列标题名称(Math、Geo 或 Fees),具体取决于需要修复的内容。如果不需要修复,则Fixes列的值将为Ok:不紧急

“费用”栏也遵循相同的概念。这意味着,如果为费用列值选择部分(表示部分付款)或未付款下拉选项,则费用将添加到修复列。简而言之,Fixes 列可以根据为其他列选择的值自动选择值,从而轻松地对需要特殊处理的内容进行排序。

我还应该提到,我是 Excel 新手。

excel if-statement excel-formula conditional-statements multiple-conditions
2个回答
2
投票

假设表格位于

[A1:E9]
并且经 OP 确认没有 [BLANK] 单元格。在
[F2]
中输入此公式并将其复制到
[F3:F9]

Excel 2016

= IF( SUMPRODUCT( ($B2:$E2<>{"Good","Good","Good","Paid"})*1 )=0, "Ok: Not Urgent",
 "Urgent: " & SUBSTITUTE(
 IF( $B2<>"Good", ", " & $B$1, "" )
 & IF( $C2<>"Good", ", " & $C$1, "" )
 & IF( $D2<>"Good", ", " & $D$1, "" )
 & IF( $E2<>"Paid", ", " & $E$1, "" ), ", ", "", 1 ) )

Excel 2019 (公式数组)

= IF( SUMPRODUCT( ($B2:$E2<>{"Good","Good","Good","Paid"})*1 )=0, "Ok: Not Urgent",
 "Urgent: " &
 TEXTJOIN( ", ", TRUE, IF( ($B2:$E2<>{"Good","Good","Good","Paid"}), $B$1:$E$1, TEXT(,) ) ) )

同时按住

ctrl
+shift+enter输入FormulaArray,如果输入正确,公式将被包裹在
{
}
中。


0
投票

如果您在 H:I 列中列出可接受的数据(如下例)。你可以使用:

=IF(TEXTJOIN(", ",1,IF(INDEX($I$1:$I$4,MATCH($B$1:$E$1,$H$1:$H$4,0))=B2:E2,"",$B$1:$E$1))="","OK: No urgent","Urgent: "&TEXTJOIN(", ",1,IF(INDEX($I$1:$I$4,MATCH($B$1:$E$1,$H$1:$H$4,0))=B2:E2,"",$B$1:$E$1)))
enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.