将sql参数传递到Power Query

时间:2020-04-09 09:18:38

标签: sql excel vba powerquery

我使用SQL存储过程作为电源查询中的源。存储过程有两个参数,两个日期。我在PQ中使用以下内容作为来源:

EXEC [BASE].[dbo].[my_procedure] '2020-04-01','2020-04-09'

在Excel工作表中,我定义了带有两个参数的参数单元格。用户输入日期作为参数值(例如DateFrom,DateTo)。我还编写了一个excel宏,用于刷新用户传递的参数(在Excel中给定单元格中键入的日期)的连接。宏的关键部分如下所示:

    With ActiveWorkbook.Connections("My_connection").OLEDBConnection
    .CommandText = Array( _
    "EXEC [BASE].[dbo].[my_procedure] '" & Sheets("Data").Range("DateFrom").Value & "', '" & Sheets("Data").Range("DateTo").Value & "'")
End With

问题在于日期未作为参数传递给Power Query。当我使用宏刷新数据时,即使更改了Excel中给定单元格中的日期,也没有任何变化。 当我在PQ中打开数据源时,日期仍然相同,如下所示:

EXEC [BASE].[dbo].[my_procedure] '2020-04-01','2020-04-09'

需要说的是,当我不使用PQ运行宏(只是简单的连接sql-excel,使用参数查询),一切正常,就可以运行。

问题是:如何将存储过程的参数传递给Power Query?

0 个答案:

没有答案