小编ebr*_*rts的帖子

在VBA HTTP Post请求中传递参数

我想在http://forums.egullet.org/的主搜索栏上做一个简单的帖子请求.(这是一个例子,但我正在尝试构建一个可以与许多人一起工作的工具.)

问题是我似乎无法找出构造/放置参数的正确方法,以便服务器处理我的请求.(我确实得到了回复,但它只是一个页面要求我再次尝试搜索,而不是我在浏览器中搜索时得到的结果.参数字符串是直接从firebug中提取的,所以我很公平确定它是正确的.我只是觉得我没有把它放在正确的位置/正确地构造它/说出我需要的一切,但我不知道要改变什么.值得注意的是我以前有过这是通过编辑Internet Explorer对象的DOM来实现的,但我正在尝试切换到XMLHTTP,因为它更快/更可靠.感谢您的帮助!

Sub httpPost()
Dim XMLHTTP
Dim result As String
Dim argumentString
argumentString = "?search_term=eggs&search_app=forums"
Set XMLHTTP = CreateObject("MSXML2.XMLHTTP.6.0")
XMLHTTP.Open "POST", _
    "http://forums.egullet.org/index.php?app=core&module=search&do=search&fromMainBar=1", False
XMLHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
XMLHTTP.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
XMLHTTP.send argumentString
result = XMLHTTP.responsetext
Set XMLHTTP = Nothing
End Sub
Run Code Online (Sandbox Code Playgroud)

html vba http xmlhttprequest excel-vba

5
推荐指数
1
解决办法
2万
查看次数

使用VBA将本地HTML文件读入字符串

这感觉应该很简单.我的计算机上存有.HTML文件,我想将整个文件读成字符串.当我尝试超级直接

Dim FileAsString as string 

Open "C:\Myfile.HTML" for input as #1
Input #1, FileAsString
Close #1

debug.print FileAsString
Run Code Online (Sandbox Code Playgroud)

我没有得到整个文件.我只得到前几行(我知道即时窗口切断,但这不是问题.我绝对不会将整个文件放入我的字符串中.)我也尝试使用文件系统对象的替代方法,并且得到了类似的结果,只是这次有很多奇怪的字符和问号投入.这让我觉得它可能是某种编码问题.(虽然坦率地说,我并不完全明白这意味着什么.我知道有不同的编码格式,这可能会导致字符串解析出现问题,但这就是它.)

更一般地说,这是我真正想知道的:如何使用vba打开任何扩展名(可以在文本编辑器中查看)和长度(不超过VBA的字符串限制)的文件,以及确保我在基本文本编辑器中看到的任何字符都被读入字符串?(如果不能(轻松)完成,我当然会感谢被指向一种可能与.html文件一起使用的方法)非常感谢你的帮助

编辑:这是我使用建议的方法时会发生什么的一个例子.特别

    Dim oFSO As Object
    Dim oFS As Object, sText As String

    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set oFS = oFSO.OpenTextFile(Path)

    Do Until oFS.AtEndOfStream
        sText = oFS.ReadAll()
    Loop
    FileToString = sText

    Set oFSO = Nothing
    Set oFS = Nothing

End Function
Run Code Online (Sandbox Code Playgroud)

我将向您展示开头(通过消息框)和结束(通过即时窗口),因为两者在不同方面都很奇怪.在这两种情况下,我都会将它与chrome中显示的html源的屏幕截图进行比较:

开始: 在此输入图像描述

在此输入图像描述

结束: 在此输入图像描述

在此输入图像描述

html io excel vba excel-vba

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

excel-vba ×2

html ×2

vba ×2

excel ×1

http ×1

io ×1

xmlhttprequest ×1