【问题标题】:Compare excel columns using specific statements使用特定语句比较 excel 列
【发布时间】:2021-10-14 12:10:11
【问题描述】:

我有一个包含多列和多行的 excel 文件。 其中两列是电话号码和日期。

我想要完成的是检查两行是否共享相同的日期和相同的电话号码。这可能是另一列中的函数,它输出共享相同数据的行的索引,如果没有找到索引,则输出 0。

我知道如何在 SQL 或任何编程语言中执行此操作,但由于某种原因,excel 让我坚持了很长时间。这是我尝试使用的函数,但我担心结果不准确:IF(AND(MATCH(E2,E3:E4761,0)MATCH(I2,I3:I4761,0)),1,2)

E列代表电话号码,I列代表日期。

如果有匹配,我尝试输出 1,如果不匹配,则输出 2,但这太笼统了,因为我需要它每次都检查同一行并获取所有可用结果。

感谢您抽出宝贵时间,如果能提供任何帮助,我将不胜感激。

【问题讨论】:

  • 您是在寻找任何匹配的行对,还是从特定行开始并查看其他行是否匹配?
  • 我需要该函数来输出与正在测试的行匹配的所有行的索引。因此,例如,如果 A 行与 B 行和 C 行匹配,我需要 A 的输出为 B、C。对于 B 为 A 和 C。期望不是字母、索引。
  • 请添加具有预期输出的示例数据以澄清您的问题

标签: excel compare


【解决方案1】:

如果您不介意在列表中包含公式所在的行,并且如果您拥有带有 FILTER 函数的 Microsoft Excel 365,则可以使用:

=TEXTJOIN(", ",TRUE,FILTER([Column1],[Column2]=[@Column2],[Column3]=[@Column3]))

请注意,我使用了 表格 和结构化引用

【讨论】:

  • 我认为这是我正在寻找的,但是我想测试两列并将结果输出到第三列,而不是像您的示例中那样的三列。不过我想我可以从这里弄清楚,谢谢先生。
  • @ZedZerg 很高兴为您提供帮助。您可以通过各种方式对其进行修改。顺便说一句,函数 IS 只测试两列:Column2 和 Column3。如果您在适应您的特定要求时遇到问题,请编辑您的问题,以提供您的输入和所需输出的代表性示例;并在我的回复中添加评论,您这样做是为了让我知道。
【解决方案2】:

除了缺少逗号之外,您的公式对我来说看起来非常好。应该是这样的:

IF(AND(MATCH(E2,E3:E4761,0),MATCH(I2,I3:I4761,0)),1,2)

或者,您可以使用CountIf 函数替换Match

IF(AND(COUNTIF(E3:E4761,E2),COUNTIF(I3:I4761,I2)),1,2)

【讨论】:

  • 理论上它可以工作,我知道,但我需要知道匹配行的索引。这只会告诉我是否有匹配的行,但我需要行的索引。
  • 好的,那么你需要每场比赛的单元格地址吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-08-11
  • 1970-01-01
  • 2016-12-20
  • 1970-01-01
  • 1970-01-01
  • 2017-01-05
  • 2017-10-13
相关资源
最近更新 更多