Excel宏将无法从可执行文件运行

时间:2018-09-28 19:32:37

标签: excel vba vb.net excel-vba scheduled-tasks

我写了一个每天更新文件的宏。我有一个用Visual Basic制作的.exe文件,它将打开excel并运行宏。我使用任务计划程序每天运行.exe。这是.vbs代码:

Option Explicit On
Imports Excel = Microsoft.Office.Interop.Excel
Imports Microsoft.Office

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        On Error GoTo exitTrying
        Dim exApp As New Excel.Application
        Dim wb As Excel.Workbook
        wb = exApp.Workbooks.Open("File_location")
        exApp.Visible = True
        exApp.Run("Macro")
        wb.Close(False)
        exApp.Quit()
exitTrying:
        End
    End Sub
End Class

这是宏:

Sub Macro()

' Macro
  Application.Run "CopyData"
  Application.Run "PivotRefresh"
  Application.CutCopyMode = False
  ActiveWorkbook.Save
End Sub

每次我从excel工作表运行宏时,它运行都非常完美。但是,它不会在任务计划程序中的指定时间运行。当我运行.exe文件时,出现以下错误:“这将取消挂起的数据刷新。继续吗?”如果我继续,宏将无法运行。这使我认为.exe文件存在问题。

宏将数据复制到表中并刷新数据透视表。当宏运行直到刷新错误出现并且我按OK时,调试错误就会发生。调试错误显示在宏的刷新部分。但是,当我查看excel文件时,数据尚未复制。单元格将突出显示数据应到达的位置,但没有数据。

我尝试启用信任中心宏设置中的所有宏。

我尝试取消选中数据连接属性中的启用后台刷新。如果未选中启用后台刷新,则.exe将不会打开excel文件。

如何正确运行.exe文件?

0 个答案:

没有答案