刷新所有连接VBA无法在run all all

时间:2018-02-17 01:44:09

标签: vba excel-vba excel

我有一个SQL Server连接的excel工作簿,我试图按顺序执行三个VBA宏

  1. 刷新所有连接(数据和图表)
  2. 复制摘要表中的所有值,并将其作为值复制
  3. 从摘要表复制一系列值并粘贴到另一个
  4. 我创建了一个名为RunAllMacros的宏来按顺序执行。由于某种原因,它说它连接到数据源并运行SQL,但在摘要页面上有许多公式来显示更新的结果。出于某种原因,它在一起运行时不会更新这些数字。当我运行第一个(刷新所有连接)宏时它工作正常 - 数字更新。知道这里可能会发生什么吗?请注意我在VBA非常新手。

    VBA:

    Private Sub RefreshAllConnections()
    'This step uses the RefreshAll method
        Workbooks(ThisWorkbook.Name).RefreshAll
    End Sub
    
    Private Sub CopyPasteAsValues()
    'This step copies the summary sheet and pastes as values
        Sheets("Summary").Activate
        Cells.Select
        Selection.Copy
        Selection.PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
    End Sub
    
    Private Sub PasteChartData()
    'This step pastes the range of values to the chart data tab
        Sheets(1).Range("A6:J24").Copy _
        Destination:=Sheets("Chart Data").Cells(Sheets("Chart Data").Rows.Count, 1).End(xlUp).Offset(1, 0)
    End Sub
    
    Sub RunAllMacros()
            RefreshAllConnections
            CopyPasteAsValues
            PasteChartData
    End Sub
    

0 个答案:

没有答案