我正在使用Excel 2010將表格鏈接到我的服務器上的XML文件。我希望將Excel文件分發給一組人員,並且每次在服務器上更新XML文件時都會更新它。從Excel中刷新XML數據
在Excel中,我使用「Data」,「From Web」提取數據,然後輸入XML文件的路徑。
Excel然後建立一個包含所有數據的表,但如果XML文件在服務器上更新,數據保持靜態,即使我在表上單擊「刷新」或「刷新XML數據」。
它應該能夠下載包含新列的新數據到表中(如果有的話)。
有沒有辦法做到這一點?
我正在使用Excel 2010將表格鏈接到我的服務器上的XML文件。我希望將Excel文件分發給一組人員,並且每次在服務器上更新XML文件時都會更新它。從Excel中刷新XML數據
在Excel中,我使用「Data」,「From Web」提取數據,然後輸入XML文件的路徑。
Excel然後建立一個包含所有數據的表,但如果XML文件在服務器上更新,數據保持靜態,即使我在表上單擊「刷新」或「刷新XML數據」。
它應該能夠下載包含新列的新數據到表中(如果有的話)。
有沒有辦法做到這一點?
我不是在VBA方面的專家,在這裏我會做什麼 1.打開重新整理一個Excel文件時,這可以通過
Sub RefreshData()
ActiveWorkbook.RefreshAll
' or you can give specific workbook and worksheet identification
End Sub
Private Sub Workbook_Open()
'Call Refresh Data Subroutine when opening file
RefreshData
end sub
做,你可以使用工作表激活事件處理程序,如果你有一個文件中的多個工作表。
私人小組Worksheet_Activate()
「呼叫刷新數據子程序時打開文件 RefreshData
結束小組
更新msexcel的,一旦服務器出現了更新,是沒有意義的數據將可用於只有在文件被打開後才能查看,但是如果你的宏被用於實時監控並且24小時保持打開狀態,那麼我建議不要從服務器發送事件並捕獲VBA,而是每天/小時/分鐘/秒(呼叫刷新在輪詢間隔)取決於您的刷新要求的關鍵性。
昏暗TimeToRun
子auto_open() 呼叫Schedulerefresh 結束子
子Schedulerefersh() TimeToRun =現在+ TIMEVALUE( 「00:00:10」)
Application.OnTime TimeToRun, "XMLRefersh"
End Sub
Sub XMLRefresh()
「呼叫刷新數據子程序打開文件 RefreshData 呼叫ScheduleRefresh 結束小組
子AUTO_CLOSE() 時上的錯誤繼續下一步 Application.OnTime TimeToRun, 「XMLRefresh」,假 結束小組