我管理一个excel文件,该文件被不同位置的数百名用户使用(互联网连接通常不可靠)。
此文件包含一个“主数据表”,用户每年需要几次数据来更新多次计算中使用的某些数据。
今天,此表中的数据是手动更新的(我们通过电子邮件发送另一个工作簿,其中包含在此表中复制粘贴的信息)。
我想自动执行此过程并将主数据表中的信息放在公共Excel在线文件中,并使用VBA连接到此文件并将数据下载到“主数据表”。
通过创建与google doc文件的网络连接,我很容易通过谷歌电子表格实现这一目标,但我真的很难用excel在线做同样的事情(我们在微软上有公司帐户,并且更容易坚持excel online)。
用户全部使用win7 + excel 2010
我用来从谷歌搜索数据的代码如下
Sub GetDataFromGoogle()
Dim i As Integer
With Sheet1
.Cells.Clear
With .QueryTables.Add(Connection:="URL;https://docs.google.com/spreadsheets/addressXYZ", Destination:=Range("$A$1"))
.Name = "MasterData"
.PreserveFormatting = True
.BackgroundQuery = False
.WebFormatting = xlWebFormattingNone
.Refresh BackgroundQuery:=False
End With
DoEvents
End With
For i = 1 To ThisWorkbook.Connections.Count
If ThisWorkbook.Connections.Count = 0 Then Exit Sub
ThisWorkbook.Connections.Item(i).Delete
i = i - 1
Next i
End Sub
谢谢!