【问题标题】:How to display rows that contain data present in several columns (Excel and/or Google Spreadsheet)如何显示包含多列数据的行(Excel 和/或 Google 电子表格)
【发布时间】:2026-02-14 10:15:02
【问题描述】:

我几天来一直在寻找解决问题的方法,但没有任何运气。也许我根本无法为这个问题找到正确的措辞,但希望有人能在这里理解我。

我很难同时显示多个列中的数据,在我的例子中,要显示的数据是各种股票的交易日。由于股票之间的交易日不同,我希望有一列显示所有其他列中存在的日期,以便仅查看所有股票的共同交易日。

如果我不清楚,我深表歉意,因为这是我在这里的第一个问题。如果有人能指出我正确的方向,我将不胜感激。

这是 google 电子表格链接,因此您可以了解我所说的不同交易日数的含义。想法是让 A 列同时显示 B、F、J、N、R、V 列中存在的日期,但不显示其他日期。

https://docs.google.com/spreadsheets/d/19GsIAtEdWPGcBfNOPaeqNVB7QQNO-bOyg-dCZzDaGkQ/edit?usp=sharing

编辑:为了显示我正在寻找的所需输出,这是另一个示例:

https://docs.google.com/spreadsheets/d/1jrIqaEzDPWcW4hkF2YdHq9XYIWjG8PhrewYrBHqEdVY/edit?usp=sharing

日期是自动从谷歌金融中提取的。由于各个交易所在不同的日期开放,每只股票在 B-E 列中的开放天数都不同。

我要做的是在 A 列中有一个公式,它检查所有其他列并返回出现在所有其他列中的数据(在本例中为日期),丢弃未出现在所有其他列。例如,2013 年 3 月 9 日出现在所有 B-E 列中,因此显示出来,但 12/09/2013 未出现在 B 列中,因此未显示。

干杯

【问题讨论】:

    标签: excel date duplicates matching stock


    【解决方案1】:
    1. 您的日期采用欧洲(英国)样式,即:2014 年 12 月 12 日,但您的电子表格保存为美国标准。这将导致某些日期被存储为文本,因为它们被认为是无效的。如果您尝试使用您的数据进行任何计算或比较,Ti 也会导致意想不到的结果。

      转到File -> Spreadsheet settings 并在locale 下选择正确的国家。 然后选择所有日期列,点击format->number->date或点击工具栏上的123v按钮,选择日期。

    2. 为了简化你的问题:

      • 对于要在所有 6 列中重复的值,该值必须出现在 B 列中。
      • 因此,您希望 A 列包含 B 列中相邻单元格的值,如果该值也出现在 F、J、N、R 和 V 列中的任何位置。
      • 要检查 B4 的值是否出现在 F 列中,您可以使用 COUNTIF 函数。如果结果 > 0,则 B4 的值出现在 F 列中。对所有列重复并组合以实现以下公式(进入单元格 A4):

      =if(countif(F:F,B4)*countif(J:J,B4)*countif(N:N,B4)*countif(R:R,B4)*countif(V:V,B4),B4,)

      • 现在将这个公式复制下来,只有出现在所有列中的日期才会显示在 A 列中。

    【讨论】:

    • 漂亮!非常感谢,这正是我所需要的。
    【解决方案2】:

    使用 IF 和 COUNTIF。我想这就是你要找的。​​p>

    IF(COUNTIF(B4:V4,B4)=6,B4,NA())
    

    【讨论】:

    • 首先感谢您的回答!但是,此解决方案并不能完全满足我的要求。如果您查看最后一只股票“chfusd”的日期,您会发现日期与之前的所有“日期”列都不匹配。我正在寻找的是一种将所有 Date 列相互比较的方法,而不仅仅是与您的解决方案建议的第一个相比。我使用 vlookup 得到了类似的结果,并且发生了同样的问题。
    • 我不明白。在电子表格的第 33 行,您有 14/10/2013 和 11/10/2013。为什么普通交易日是 2013 年 10 月 15 日?
    • 我更新了我的问题并添加了另一个具有所需结果的电子表格!我不知道这是否有可能做到......
    最近更新 更多