excel - 尝试连接到网站时,VBA 中是否有解决错误运行时错误“429”的方法?
问题描述
我正在尝试创建一个 VBA 来将谷歌表格下载到 excel 中,这样我就可以每天编译股市数据。我会简单地使用电源查询,但我在我的个人笔记本电脑上执行此操作,这是一台 Mac,不支持电源查询。我对编码比较陌生,所以一直倾向于遵循在线说明。该指令包括:
Set objWebCon = CreateObject("MSXML2.XMLHTTP.3.0")
此行在运行时会创建一条错误消息:
“运行时错误‘429’:ActiveX 组件无法创建对象”
我认为问题在于指令基于 Windows 操作系统这一事实。我搜索过的任何解决方案都特定于 Windows 操作系统。
这里有人知道我是否可以更改代码的“MSXML2.XMLHTTP.3.0”部分以更好地适应mac?不确定这是否是需要做的,但任何指导将不胜感激。
我在下面附上了我的完整代码,但如果不是相关的,请随意忽略它。谢谢!!
Sub DownloadGoogleSheets()
Dim ShtUrl As String, Location As String, FileName As String
Dim objWebCon, objWrit As Object
'Sheet Url
ShtUrl = "https://docs.google.com/spreadsheets/d/1wpA_epxtlz96sxETqKttJwsy9Aubb15H8xslcSQ20T0/export?format=csv&id=1wpA_epxtlz96sxETqKttJwsy9Aubb15H8xslcSQ20T0" & gid = 1319327791
'Location
Location = ThisWorkbook.Path & "\" '/Users/[myName]/Desktop/Stock Analysis/n"
'FileName
FileName = "GoogleSheet.csv"
'Connection to Website
Set objWebCon = CreateObject("MSXML2.XMLHTTP.3.0")
'Writer
Set objWrit = CreateObject("ADODB.Stream")
'Connecting to the Website
objWebCon.Open "Get", ShtUrl, False
objWebCon.Send (ShtUrl)
'Once page is fully loaded
If objWebCon.Status = 200 Then
'Write the text of the sheet
objWrit.Open
objWrit.Type = 1
objWrit.Write objWebCon.ResponseBody
objWrit.Position = 0
objWrit.SaveToFile Location & FileName
objWrit.Close
End If
Set objWebCon = Nothing
Set objWrit = Nothing
End Sub
解决方案
推荐阅读
- javascript - 按顺序测试几个 observables
- python - ValueError:模型的特征数量必须与输入匹配。模型 n_features 为 25,输入 n_features 为 76
- python - 用于 CenterNet 的 Eager Few Shot 对象检测 Colab
- java - 是否有必要将同步添加到我的代码中?
- java - 尝试使用 ImageIO.read 读取 PNG 图像时,在 Tomcat 8 服务器中获取 java.lang.NoClassDefFoundError: com/sun/medialib/codec/png/Decoder
- kotlin - 同步和 withContext
- android - Android Gradle - 除了风味特定的 .aar 文件外,还实现共享的 .aar 文件
- javascript - 在函数内创建元素几次
- android - 使用android 10中的警报管理器杀死应用程序后的本地通知
- r - 我无法在 dplyr 中计算均值和标准差