合并单元格,如果另一个单元格有两个或更多相同的值:我的数据有两个或更多记录,除了一个单元格相同:示例A1 Name = Joe,A2 = Joe但B1 =星期二,B2 =星期三。我需要显示一行A1 = Joe和B1 =星期二,星期三。我可以创建另一行,如C1 = B1 & B2,但是如何使它通过A循环,并且如果有匹配的记录,则合并B中的两个值。我认为这将会像放入C1,C2 ,C3 ... = IF(A1 = A2 ...,B1 & B2,“”)但是,不是A2如何循环遍历所有A,然后将B的结果合并为匹配记录?Excel合并单元格,如果其他单元格匹配
回答
这是一个可能的解决方案。 (我希望我能正确理解您的设置)
步骤1)将列A中的所有唯一名称分隔到新工作表中,再次放入新工作表的A列中 - 如果您使用的是Excel 2007或更高版本您可以复制整个列然后使用删除重复工具
步骤2)在您的新工作表中,将以下内容添加到列B2中。这将计算每个名称的出现次数。 (注:我假设你的原始数据是在Sheet1,新副本在Sheet2中处理)
=COUNTIF(Sheet1!$A$1:$A$5,$A2)
步骤3)添加以下到C3。这将找到名称第一次出现的行号。 (重要提示:这意味着你的原始数据将需要应用,以确保所有出现组合在一起的名称的排序)
=MATCH($A2,Sheet1!$A$1:$A$5,0)
步骤4)在列d至J你需要添加下面的数组公式。 (i)选择单元格D2:J2(ii)确保D2是活动单元格(iii)在公式栏中输入以下公式(iv)按ctrl + shift +输入
这需要数据列B中通过第一行发生(步骤3),通过名称(步骤2)的计数重新定尺寸,并且转置(其反转的行为列)
=TRANSPOSE(OFFSET(Sheet1!$B$1:$B$5,C2-1,0,B2))
抵消它
这可能适合你的需要,但如果你坚持用逗号分隔日期,那么你可以将它添加到K2中,并且只将B列隐藏到J.
=IF(ISNA(D2),"",D2)&IF(ISNA(E2),"",","&E2)&IF(ISNA(F2),"",","&F2)&IF(ISNA(G2),"",","&G2)&IF(ISNA(H2),"",","&H2)&IF(ISNA(I2),"",","&I2)&IF(ISNA(J2),"",","&J2)
我假设你永远不需要加入超过7个值(例如一周中的7天)。但是,如果你这样做,那么你必须将Array公式扩展到更多列。如果您没有设置最大值,那么可能需要调查VBA解决方案。
我发现了另一个不需要使用数组公式的解决方案,并且应该能够遍历所有可能性。再次,它会要求你的原始数据通过名称进行排序(以便所有的名称组合在一起),然后后直接原始数据添加此公式列(我假设C2)
=IF(A1<>A2,B2,C1&","&B2)
这将用逗号加入它上面的所有内容,并在名称更改时重置加入。通过这个庄园,你想要的数据将永远与名称的最后一个实例相对。我们可以使用前面答案中步骤2 & 3的结果找到最后一个实例,然后将其与上述公式的结果进行索引,所以..
=INDEX(Sheet1!$C:$C,COUNTIF(Sheet1!$A:$A,$A2)+MATCH($A2,Sheet1!$A:$A,0) -1)
在上面我假设你想在最终答案的名字是在单元格A2
在玩完所有的优秀建议之后,上面的短IF陈述接近我需要的全部内容。如果记录是针对同一个人的,则“= IF(A1 <> A2,B2,C1&”,“&B2)”将在第二天添加,但会将第二天添加到第二个人(第三等)。我知道这是循环播放时的样子,但是有没有办法让第一张唱片能够获得额外的时间。原因:读取此数据的工作表使用= MATCH和OFFSET执行更多操作,并且需要此信息的单元必须读取第一条记录。 – user745778
我一直在试图调整你的脚本以显示第一条记录上的多个日子,但你的脚本非常简单,而且我看不到方法。可能吗? – user745778
是的,你可以。如果将简短的“IF”语句保留在原来的位置(如果您不希望看到它,则隐藏该列),然后在列上添加第二个公式(以'= INDEX ...'开头的公式)在它旁边,这将使全部结果出现在每条记录上。您可以通过在INDEX语句前添加followng来将其限制在第一位IF(A1 = A2,“”,INDEX ...“ – Skytunnel
- 1. 如果其他单元格匹配,则Excel中的某些单元格范围会匹配列
- 2. MS excel单元格匹配
- 3. Excel单元格匹配
- 4. 如果其他单元格匹配,则将数据合并到新单元格中
- 5. 基于其他单元格格式的excel单元格范围
- 6. 如果单元格匹配另一个单元格,复制值
- 7. excel如果单元格包含匹配值然后复制相邻单元格
- 8. Excel:如果两个不同的单元格匹配,则引用单元格。
- 9. AppleScript Excel单元格搜索和替换其他单元格
- 10. 如果两个单元格匹配,则将第三个“匹配”单元格的返回值垂直合并
- 11. 如果另一个单元格匹配,合并唯一值
- 12. Excel合并多个单元格内容如果单元格=“失败”
- 13. 扩大单元格以匹配行中其他单元格的高度
- 14. 如何在Excel中合并单元格?
- 15. 选择特定的单元格,并将数据放在其他单元格excel
- 16. Excel 2016:根据两个其他单元格的颜色是否匹配来格式化单元格
- 17. Excel单元格值取决于其他
- 18. 合并单元格
- 19. Excel复制并粘贴合并单元格为单元格格式
- 20. 打印并合并来自单元格的内容,如果其他单元格的值为真
- 21. Excel复制单元格A到单元格C如果单元格B复制
- 22. 从其他表格单元格填充其他HTML表格单元格
- 23. 如果其他单元的“+ - 5”计数单元格
- 24. 如何合并两个或多个单元格,如果它们在其他单元格上的内容相同
- 25. ReportViewer导出到Excel-合并单元格
- 26. 使用office.js合并excel单元格
- 27. 重新生成Excel合并单元格
- 28. 合并Excel单元格中的文本
- 29. Excel Javascript API - 检查合并单元格
- 30. Excel VBA合并单元格功能
步骤1,2及3工作的罚款(第3步我投入C2),但第4步只是返回0。更糟糕的是,我肯定会需要超过7个数量是无限的。所以,我将添加VBA到标签,并希望有人能让我走上正轨。 – user745778
@ user745778你的权利我的意思是C2的第3步。我找到了另一个使用公式的解决方案,它有点简单。我已经发布了它作为另一个答案 – Skytunnel