【问题标题】:Excel not returning same values as Google SheetsExcel 不返回与 Google 表格相同的值
【发布时间】:2018-02-09 02:40:58
【问题描述】:

我有这个适用于 Google 表格的公式:

=IF(ISERROR(
INDEX(Students!$A:$H,SMALL(IF(Students!$G:$G=$B$1,ROW(Students!$G:$G)),ROW(1:1)),C$1)),"DELETE",
INDEX(Students!$A:$H,SMALL(IF(Students!$G:$G=$B$1,ROW(Students!$G:$G)),ROW(1:1)),C$1))

它返回一个基于 B1 的可拖动学生列表(C1 选择列)

但是,当我从 Google 表格下载 .xlsx 并在 MS Excel 中打开时,它不会返回学生。它返回 1 行(标题),没有别的。 是什么原因造成的?

编辑:添加快照

【问题讨论】:

  • 查看工作表的快照会有所帮助。你能贴一张你的床单的照片吗?
  • 当然,我在编辑快照
  • 这很有帮助,但您的“学生”表的快照将有助于了解您的数据是如何布局的。你能补充一下吗?
  • 好的,也加入了
  • 你的 if 标准在 excel 中评估为 false,因此采用 row(1)。

标签: excel google-sheets


【解决方案1】:

简短的回答是您必须将其作为数组公式放入 Excel 中(此处显示一些虚拟数据)

但是你只得到第一行的原因就不那么明显了(无论如何对我来说)

当您有一个范围并在像 =G:G 这样的公式中使用它时,Excel 会根据您放置公式的位置从范围中选择一个不同的单元格(我忘记了这个机制叫什么?)所以在这种情况下,公式B2 从 Students!G2 中获得 6 忠诚度,并且 IF 语句给出 TRUE,最终得到(行)1 中的最小值,即 1,因此您获得了第一行。如果你试图得到第二小的,你最终会出错。

【讨论】:

    【解决方案2】:

    这是一个数组公式,无需显式使用 ARRAYFORMULA,Google 就能很聪明地识别它,而 Excel 则不然。您需要使用 CTRL 输入公式 +SHIFT+ENTER。如果操作正确,公式应自动括在花括号 { } 中。

    【讨论】:

    • 感谢您的全面回答,现在可以使用了 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2021-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多