利用Excel VBA实现源数据自动导入及数据刷新

您所在的位置:网站首页 如何查询excel连接外部数据信息记录 利用Excel VBA实现源数据自动导入及数据刷新

利用Excel VBA实现源数据自动导入及数据刷新

#利用Excel VBA实现源数据自动导入及数据刷新| 来源: 网络整理| 查看: 265

双击模块1,将以下代码粘贴到代码窗口内

 

Sub 示例1()

 

    Application.ScreenUpdating = False '取消屏幕更新

    Application.DisplayAlerts = False '取消错误警告

    

    '设置当前用户桌面路径

    Dim desktop_path As String

    desktop_path = Environ("userprofile") & "\Desktop"

    

 

    '导入发运明细,并刷新Sheet1中数据

    

    '第一步:清空Sheet2表中所有单元格数据

    Workbooks("示例1.xlsm").Worksheets("Sheet2").Activate

    Cells.Select

    Selection.Clear

    

    

    

    '第二步:将导出数据保存到桌面,命名为“源”,打开后复制所有单元格,此处需注意excel工作薄保存的后缀名,如果为”.xlsx“,需相应地更改为”.xlsx“

    Workbooks.Open (desktop_path & "\" & "源.XLS") '此处使用设置好的桌面路径“desktop_path”,打开名称为“源”的文件

    Cells.Select

    Selection.Copy

    

    

    

    '第三步:将复制内容粘贴到Sheet2中,并关闭“源”工作薄

    Workbooks("示例1.xlsm").Activate

    Worksheets("Sheet2").Range("A1").Select

    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _

        :=False, Transpose:=False

    

    Workbooks("源.XLS").Close

    

    

    

    '第四步:刷新透视表

    Dim sht As Worksheet, i

        For Each sht In Worksheets

    

        If sht.PivotTables.Count > 0 Then

    

            For i = 1 To sht.PivotTables.Count

            sht.PivotTables(i).PivotCache.Refresh

        Next

        End If

        Next

    

    

    MsgBox ("已更新完成!")

    

    Workbooks("示例1.xlsm").Worksheets("Sheet1").Activate

 

End Sub



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3