我们在Excel工作表上有一个Web查询,该工作表转到MoneyFacts(Moneyfacts website)以获取最新的Bond& ISA储蓄率。
费率页面需要在显示费率页面之前按用户名和密码登录(因为它是订阅网站)。
通过反复试验并查看登录页面的内容,我能够确定我需要将这些符号添加到连接中:
所以我改变了数据表的c onnection属性,如下所示:
sheets("ISA 3Yr").range("A12").QueryTable.Connection="URL;http://analyser.moneyfacts.co.uk/savings/forms/frmDashboard.aspx?symbol=[""body_txtUsername""]”&symbol=[""body_txtPassword""]”&did=37&module=2&tocfilter=15&view=2&rerun=92680f6c-9fcc-4585-9b2a-aaf9b281cf88"
现在,当我们第一次单击功能区上的刷新所有时,将显示对话框,以便我们输入用户名和密码。每次我们选择输入数据并刷新网页查询。
但是下次没有要求登录,就失败了。
我们如何正确地将参数传递给网页查询?
答案 0 :(得分:1)
您可以在网址的查询字符串部分中传递参数,因此在您的示例中,您有did=37&module=2&tocfilter=15&view=2&
这是一系列给出的键值对
did=37
module=2
tocfilter=15
view=2
或者它们发布在HTTP标头中。您需要一个HTTP嗅探器工具来进一步调查。我在http://www.telerik.com/fiddler使用了Fiddler,这非常好。