【问题标题】:Recreating a Google Spreadsheets QUERY() in Excel在 Excel 中重新创建 Google 电子表格 QUERY()
【发布时间】:2013-04-21 19:19:47
【问题描述】:

我有一个庞大的 Excel 工作簿,用于跟踪产品标题和描述,我试图让它生成 .csv 文件,以便将这些产品导入 eBay 和我自己的网站。我已经完成了 99% 的工作,但我似乎找不到与 Google 电子表格的 QUERY() 函数等效的 Excel,并且有两个地方需要使用它:

第一,我需要使用 SheetA 中尚未在网站上列出的产品 ID 填充 SheetB 中的一列。在 Google 电子表格中,我会使用 =query('SheetA'A:B,"select A where isblank(B)") 执行此操作,但我终其一生都无法在 Excel 中找出等效项。

第二,我需要从四张不同的表中取出所有非空白行并将它们放在一张表中。

必须有一些明显的东西我错过了,但我错过了。帮助我,神奇的互联网人,你是我唯一的希望!

【问题讨论】:

  • 在 VBA 中使用 Microsoft.ACE.OLEDB,可以在 MS-Excel 中使用 SQL。

标签: excel filtering


【解决方案1】:

坏消息是 Excel 没有 QUERY() 的等效项

不太坏的消息是您可以自己滚动。

一些可能的方法:

  1. 将数据移至数据库。您可以在数据库中完成所有操作,或者仍然使用 Excel 作为前端(例如,使用 Get External Data 查询数据库,或者全部在 VBA 中构建)
  2. 使用AutoFilters 查询您的数据(这不是 SQL 查询...)。有很多关于这种技术的 SO 示例
  3. 使用Get External Data(尽管有名称,但它可以是自引用的)查询您的数据(此 SQL 查询)请参阅this answer 了解初学者

【讨论】:

    【解决方案2】:

    查看用于 Excel 的第 3 方 Query() 函数的 this short video

    这里还有一个 5 秒的“hello world”gif:

    要安装它,您需要QueryStorm runtime,这是一个免费的 4MB 安装程序。它就像 Excel 的包管理器。安装后,转到功能区中的 QueryStorm 选项卡,单击扩展并安装“Windy.Query”包(如视频所示)。

    [免责声明] 我是第三者(QueryStorm 的作者)。

    【讨论】:

      【解决方案3】:

      在 Excel 中使用 Power Query。尽管使用了不同的技术,但它会做同样的事情,甚至更多。转到 YouTube 并搜索 ExcelIsFun 和 MSPTDA

      【讨论】:

        【解决方案4】:

        我也需要这样做,在 Excel 中使用 INSERT>TABLE 可以解决问题,从表中创建数据透视表,然后在添加列和/或行时将其作为数据透视表

        【讨论】:

          【解决方案5】:

          我知道这篇文章已有 8 年历史,但如果其他人正在寻找解决方案,您可以在单元格 C2 中尝试以下公式

          =INDEX('SheetA'$A$2:$A$10, SMALL(IF($D$2="", ROW($A$2:$A$10)-ROW($A$2)+1), ROW(1:1)))
          

          这将在 SheetA A 列中查找空单元格并在 C2 单元格中显示一个值。 如果要从 B 列中提取值,请重复相同的公式,但将 'SheetA'$A$2:$A$10 替换为 'SheetA'$B$2:$B$10。

          缺点: 1. 您必须将此公式复制到右侧并手动替换公式的第一位。 2. 您必须将公式复制到与 SheetA 中的值一样多的行中,以确保您不会遗漏任何值。

          最后:输入公式后,按CTRL SHIFT-ENTER将其转换为数组公式。

          【讨论】:

            【解决方案6】:

            借助 @anakac 的道具,获得了一个非常酷的第三方插件,毫无疑问,这个问题的最佳答案是 Matt 的:Power Query。有一点点学习曲线,但它是一个非常通用的工具,可以创建真正可重用和自动化的过滤结果。

            【讨论】:

            • 问题不是第三方插件产品的请求。
            • @JohnH Power Query 不是第 3 方
            猜你喜欢
            • 2023-03-23
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-08-10
            • 1970-01-01
            相关资源
            最近更新 更多