2

我正在从 Google Docs 过渡到 Excel 并使用 equilivent 函数运行 int 问题:特别是 Google Docs:Query()

通过谷歌搜索,我知道 Excel 中没有查询,我已经开始制作一个 VBA 函数来做同样的事情,但遇到了麻烦

原始 Google Docs 查询 =QUERY('GP Referrals 2012-2013'!A15:Z ; "SELECT A, Z WHERE J = 'WH' ORDER BY Z DESC LIMIT 9", 0)

A 是一个字符串,Z 是一个数字,J 是三个可能的字符串之一。我在 J 中使用不同的值运行了 3 次。

有没有办法在 Excel 中做到这一点。我有第二张表设置来输入结果。

我已经启动了一个功能,但我对如何进入下一步感到困惑。任何帮助表示赞赏。

Function getTopGPs(clinic As String) As Integer
    Dim activeSheet As Object
    Set activeSheet = Worksheets(1)

    Dim rawRange As Object
    Set rawRange = activeSheet.Range("A15:Z65536")

    // How can I go from here?

结束功能

4

1 回答 1

1

根据@chuff 的方法,给您的数据数组标签(我从 A14:Z14 中选择A> Z)并命名数组 (A14:Zn) - 我选择了GParry.

数据 > 获取外部数据 - 从其他来源、从 Microsoft Query、数据库、Excel 文件*,确定。选择您的工作簿名称,确定,表:GParry,添加,关闭。

在 GParry 下的列表中,依次双击 A、J 和 Z,然后单击SQL按钮。在 SQL 语句中:更改SELECTSELECT TOP 9并附加:

WHERE J = 'WH'  
ORDER BY Z DESC 

好的好的。

如果您希望将结果返回 Excel,只需选择提取(左上角)、编辑、复制并粘贴到适合您的位置。

于 2015-10-18T04:53:48.553 回答