Richard Bartoníček Asked: 2019-05-03 01:04:03 +0800 CST2019-05-03 01:04:03 +0800 CST 2019-05-03 01:04:03 +0800 CST Excel - 从多个单元格中提取值并列出它们 772 假设我是一名导师。我的每个学生都写下了他们有空的天数。他们在表格中将日期写在他们名字旁边的一个单元格中。 我正在寻找一个公式,它将反转该列表 - 匹配并在日期旁边列出名称。 有任何想法吗?谢谢 microsoft-excel list 2 个回答 Voted Best Answer Scott Craner 2019-05-03T05:16:22+08:002019-05-03T05:16:22+08:00 如果您有 Office 365 Excel 或更高版本,则可以使用 TEXTJOIN 作为数组公式: =TEXTJOIN(CHAR(10),TRUE,IF(ISNUMBER(SEARCH(E4,$B$1:$B$3)),$A$1:$A$3,"")) 作为数组公式,在退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 来确认。 这将在搜索所需的日期名称时迭代值$B$1:$B$3,如果找到,它将将该名称返回给 TEXTJOIN 函数,如果没有,它将返回一个被 TEXTJOIN 函数忽略的空白。 Harshad Amichand Vegda 2019-05-05T07:49:00+08:002019-05-05T07:49:00+08:00 我建议采用以下方法 1 : 列标题 : Student, Schedule, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday 2:在A2,A3,A4中输入学生姓名..作为A,B,C,D等......在学生栏中 3:在学生A的时间表栏中写时间表为“星期一,星期二,星期五”对于学生B写“星期一,星期三”对于学生C输入“星期一,星期三,星期六”等。 4:对于星期一列标题星期一:在单元格 C2 中:输入公式 =IF(ISNUMBER(SEARCH($C$1,B2)),A2,"") 5:将 C2 复制到 C3、C4 等中,用于星期一 第 6 列:在星期二:单元格 D2 输入公式 =if(ISNUMBER(SEARCH($D$1,B2)),A2,"") 并向下复制线 这样Daywise就会显示一个结果,要教的学生是谁 谢谢。
如果您有 Office 365 Excel 或更高版本,则可以使用 TEXTJOIN 作为数组公式:
作为数组公式,在退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 来确认。
这将在搜索所需的日期名称时迭代值
$B$1:$B$3
,如果找到,它将将该名称返回给 TEXTJOIN 函数,如果没有,它将返回一个被 TEXTJOIN 函数忽略的空白。我建议采用以下方法
1 : 列标题 : Student, Schedule, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday
2:在A2,A3,A4中输入学生姓名..作为A,B,C,D等......在学生栏中
3:在学生A的时间表栏中写时间表为“星期一,星期二,星期五”对于学生B写“星期一,星期三”对于学生C输入“星期一,星期三,星期六”等。
4:对于星期一列标题星期一:在单元格 C2 中:输入公式 =IF(ISNUMBER(SEARCH($C$1,B2)),A2,"")
5:将 C2 复制到 C3、C4 等中,用于星期一 第 6 列:在星期二:单元格 D2 输入公式 =if(ISNUMBER(SEARCH($D$1,B2)),A2,"") 并向下复制线
这样Daywise就会显示一个结果,要教的学生是谁
谢谢。