【发布时间】:2011-07-27 11:32:51
【问题描述】:
我创建了使用外部源和 SQL 2008 的 Excel 2003 数据透视表。
我在查询中写道:
exec mysproc '20110726', '20110727'
而且效果很好。但是我需要能够传递从 Excel 单元格中获取的日期。
什么是最干净/最短的解决方案?
【问题讨论】:
标签: sql-server sql-server-2008 excel excel-2003 vba
我创建了使用外部源和 SQL 2008 的 Excel 2003 数据透视表。
我在查询中写道:
exec mysproc '20110726', '20110727'
而且效果很好。但是我需要能够传递从 Excel 单元格中获取的日期。
什么是最干净/最短的解决方案?
【问题讨论】:
标签: sql-server sql-server-2008 excel excel-2003 vba
找到了答案。添加了附加到以下子项的按钮:
Sub RefreshPivotQuery()
Dim d1 As String
Dim d2 As String
d1 = Format(Sheets("Main").Range("Date1"), "yyyymmdd")
d2 = Format(Sheets("Main").Range("Date2"), "yyyymmdd")
Dim ws As Worksheet
Set ws = Sheets("Pivot")
ws.PivotTables(1).PivotCache.CommandText = "exec mysproc '" + d2 + "', '" + d1 + "'"
End Sub
【讨论】: