首页 > 解决方案 > 使用表格标题作为单元格中的内容

问题描述

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

[名称] [数学] [地理] [生物] [费用] [修复]
Ram 非常差 好 好 未付 紧急:数学,费用
大坝中性好坏支付紧急:数学,生物
Rik 好 好 好 支付 OK:不紧急
Nik Good Good Good 部分紧急:费用

主题列的值来自下拉菜单,该菜单具有良好、中性、坏和非常坏选项,如果选择了中性、坏或非常坏值,则修复列将使用前缀紧急更新:并且列标题名称(数学、地理或费用)取决于需要修复的内容。如果不需要修复,则Fixes列的值为Ok: Not Urgent

费用栏也遵循相同的概念。这意味着如果为费用列值选择了部分(意味着部分支付)或未付下拉选项,则费用将被添加到修复列中。因此,简而言之,Fixes列用于通过根据为其他列选择的值自动选择值来轻松排序需要特别指定的内容。

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

标签: excelif-statementconditional-statementsmultiple-conditions

解决方案


假设该表位于[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(,) ) ) )

输入的同时FormulaArray按住ctrl++ ,如果输入正确 ,公式将被包裹在其中。shiftenter{}

在此处输入图像描述


推荐阅读