Office中国论坛/Access中国论坛

标题: 如何实现自动运行数据刷新 [打印本页]

作者: 123shusheng    时间: 2016-11-20 22:02
标题: 如何实现自动运行数据刷新
我的EXCL表导入外部数据,新建web查询,每次打开excl表都会提示“启用自动刷新”和“禁止自动刷新”。我的要求是打开EXCL表后自动选择“‘启用自动刷新”,刷新excl数据后,自动存盘后关闭excl表。
请高手指点,谢谢!

作者: zhanguoru    时间: 2016-11-28 15:39
不知道,这个宏代码能不能帮到您;

ActiveWorkbook.RefreshAll
作者: 123shusheng    时间: 2016-11-28 16:08
zhanguoru 发表于 2016-11-28 15:39
不知道,这个宏代码能不能帮到您;

ActiveWorkbook.RefreshAll

不会用,能帮我改改吗?谢谢!
作者: zhanguoru    时间: 2016-11-28 17:26
我试了一下,在OPEN试中使用Refreshall,电脑还是会要求您提供源文件的位置……
作者: zhanguoru    时间: 2016-11-28 17:27
我试了一下,在OPEN事件中使用refreshall,EXCE还是会要求的您提供源文件的位置,应该还是不能实现全自动……
作者: 123shusheng    时间: 2016-11-28 21:08
zhanguoru 发表于 2016-11-28 17:27
我试了一下,在OPEN事件中使用refreshall,EXCE还是会要求的您提供源文件的位置,应该还是不能实现全自动… ...

谢谢您!如果实在不行,我只有依靠模拟按键来实现自动更新.
作者: zhanguoru    时间: 2016-11-29 09:18
看您如此坚决,再试一下,应该不要模拟吧!每次开启都导入一次,不知这样是不是您期望的结果,我是用TXT作为来测试的,在workbook的OPEN事件中加如下代码(不需要记,录制代码就可以):

Private Sub Workbook_Open()

   
    Cells.Select
    Selection.ClearContents
   
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;C:\Users\zhang.gu\Desktop\New Text Document.txt", Destination:=Range( _
        "$A$1"))
        .Name = "New Text Document"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 1252
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 1, 1, 1)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
   
   
   

    ActiveWorkbook.Save
    ActiveWorkbook.Close
   
End Sub






欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3