如何将网页(代码)传输到 VBA 中的字符串变量
How to Transfer a Web Page (Code) to a String Variable in VBA
我在 Windows XP 上使用 Excel 2003。我尝试使用或调整的所有引用 HTML 的代码都不起作用,因为它可能是为较新版本编写的。
现阶段我在做什么
通过单击 Excel 中的 link,我发送了一个 YouTube API 请求,该请求激活了浏览器 (Google Chrome),我在其中获得了文本形式的结果网页上的(JSON 数据)。我复制网页的内容并将其粘贴到 Excel 中,后者以每个单元格一行的格式导入。我已经为 'extract' 所有数据创建了一个宏,每列一个 属性 到一个范围,数组作为分隔文本。宏使用的时间是每个文件大约 2-3 秒,最多 50 个条目,这可能会减少,因为只有一部分数据对我有用,并且也不需要复制多个此类文件的选项。
我想做什么
我想绕过激活浏览器并在将 JSON 数据粘贴到 Excel 之前复制它。我已经看到用 JavaScript (Parse) 做了类似的事情,但我不知道在我的情况下如何使用它。
所以,到目前为止我实际上没有什么可以提供的(它可能与 Microsoft HTML 对象库有关,Innerhtml...WebQuery 不起作用。),但如果有人能指出我正确的方向,我将不胜感激,并努力进一步调查。
我想 运行 来自 Excel 的宏,它将遵循 YouTube API 请求的 hyperlink 并粘贴结果(JSON数据)绕过浏览器进入 ActiveSheet 的 A 列。
或为了简化:我想将文件 https://www.w3.org/TR/PNG/iso_8859-1.txt 中的文本粘贴到 Excel 中的 ActiveSheet,或粘贴到 word 文档,或使用 VBA 绕过变体变量浏览器。我不知道从哪里开始寻找。
例如:
Sub Test()
Dim sUrl As String
sUrl = "https://www.w3.org/TR/PNG/iso_8859-1.txt"
With CreateObject("Msxml2.ServerXMLHTTP")
.Open "GET", sUrl, False
.send
Debug.Print .responseText
Debug.Print .getAllResponseHeaders
End With
End Sub
我在 Windows XP 上使用 Excel 2003。我尝试使用或调整的所有引用 HTML 的代码都不起作用,因为它可能是为较新版本编写的。
现阶段我在做什么 通过单击 Excel 中的 link,我发送了一个 YouTube API 请求,该请求激活了浏览器 (Google Chrome),我在其中获得了文本形式的结果网页上的(JSON 数据)。我复制网页的内容并将其粘贴到 Excel 中,后者以每个单元格一行的格式导入。我已经为 'extract' 所有数据创建了一个宏,每列一个 属性 到一个范围,数组作为分隔文本。宏使用的时间是每个文件大约 2-3 秒,最多 50 个条目,这可能会减少,因为只有一部分数据对我有用,并且也不需要复制多个此类文件的选项。
我想做什么
我想绕过激活浏览器并在将 JSON 数据粘贴到 Excel 之前复制它。我已经看到用 JavaScript (Parse) 做了类似的事情,但我不知道在我的情况下如何使用它。
所以,到目前为止我实际上没有什么可以提供的(它可能与 Microsoft HTML 对象库有关,Innerhtml...WebQuery 不起作用。),但如果有人能指出我正确的方向,我将不胜感激,并努力进一步调查。
我想 运行 来自 Excel 的宏,它将遵循 YouTube API 请求的 hyperlink 并粘贴结果(JSON数据)绕过浏览器进入 ActiveSheet 的 A 列。
或为了简化:我想将文件 https://www.w3.org/TR/PNG/iso_8859-1.txt 中的文本粘贴到 Excel 中的 ActiveSheet,或粘贴到 word 文档,或使用 VBA 绕过变体变量浏览器。我不知道从哪里开始寻找。
例如:
Sub Test()
Dim sUrl As String
sUrl = "https://www.w3.org/TR/PNG/iso_8859-1.txt"
With CreateObject("Msxml2.ServerXMLHTTP")
.Open "GET", sUrl, False
.send
Debug.Print .responseText
Debug.Print .getAllResponseHeaders
End With
End Sub