我正在使用Excel 2013文件,我更新了该文件以使用PowerQuery更轻松地导入数据。
它已经使用了VBA宏,我希望包含一个带有下载PowerQuery链接的Warning / MsgBox(如果尚未安装)。
我如何检查主机系统上是否存在PowerQuery?
答案 0 :(得分:3)
在link我调整Rory的代码,我会提供类似以下的内容。注意:您可以使用Rory的附加代码来处理2016版本或更早版本,以确保是否已安装。
由于您无法直接使用超链接,我已修改了WiktorStribiżew的代码here,该代码允许用户在收到msgbox说未安装后单击“确定”转到下载站点。
Option Explicit
Private Sub IsPowerQueryAvailable()
Dim downloadlink As String
downloadlink = "https://www.microsoft.com/en-gb/download/details.aspx?id=39379"
Dim bAvailable As Boolean
If Application.Version >= 16 Then
bAvailable = True
Else
On Error Resume Next
bAvailable = Application.COMAddIns("Microsoft.Mashup.Client.Excel").Connect
On Error GoTo 0
If Not bAvailable Then DownloadPowerQuery downloadlink
End If
End Sub
Private Sub DownloadPowerQuery(downloadlink As String)
Dim objShell As Object
Dim Message As String
Dim Wscript As Object
Set objShell = CreateObject("Wscript.Shell")
Message = MsgBox("Would you like to download PowerQuery?", vbYesNo, "Powerquery not available")
If Message = vbYes Then
objShell.Run (downloadlink)
Else
Wscript.Quit
End If
End Sub