2015-11-03 153 views
0

我有代码,使用宏,例如从网站拉一般的数据导入Excel雅虎财经报价。但是,是否有可能从安全的网站(需要登录的网站)提取数据以自动完成报告?提供的链接是接近的,但我不明白如何传递的参数此外,当我运行此我只得到一个对话框带有“X”,并没有别的... 一个编辑: 我从SAP拉成功因素。我可以让宏获得一个与URL关联的pdf,但它不会抓住一个特别的Excel报告。如果任何人有任何想法,这将是伟大的!我已经粘贴下面我的代码:VBA宏从安全网站提取数据到Excel

Dim driver As New Selenium.WebDriver 
Public Sub DownloadFile() 
    driver.Start "Chrome" 
    driver.Get "https://performancemanager4.successfactors.com/login company=Arrow&username=A79123" 
    driver.Wait 20000 
    driver.Get "https://performancemanager4.successfactors.com/acme?fbacme_n=analytics&bplte_company=Arrow&_s.crb=EAYY%2bFNmT7%2b%2b8%2fbKt4IEV6RmGRM%3d" 
    driver.Wait 1000 
    driver.Get "https://performancemanager4.successfactors.com/acme?_s.crb=EAYY%252bFNmT7%252b%252b8%252fbKt4IEV6RmGRM%253d#focus" 
    driver.Wait 1000 
    driver.Get "file:///C:/Users/a79123/Downloads/report_Hires_by_Job_Family_Sarah_07a6559d-98a8-436d-b686-5abd2a2c631d.pdf" 
End Sub 
+0

的可能重复[我怎样下载使用VBA文件(没有Internet Explorer)(http://stackoverflow.com/questions/17877389/how-do-i-download-a-file-using -vba-没有互联网资源管理器) –

回答

0

我一直在玩弄硒位在几个月前的VBA中。我发现最好的办法是把一个等待时间,让你有充足的时间来登录到网站,然后让代码把它从那里一次的代码。我觉得我跑的最大问题不是存储用户名和密码在其他人想要使用它或创建一个带有隐藏文本的密码字段的表单对于Excel来说很困难。

Dim driver As New SeleniumWrapper.WebDriver 
Public Sub getData() 
    driver.Start "IE" 
    driver.Open "your site here" 
    driver.Wait 20000 ' use this time to log in 
    ' more code here 
End Sub 
+0

这将是有机器等待一个好主意,但是当我尝试昏暗的驱动程序作为新SeleniumWrapper ......我得到的,说没有定义用户自定义对象的错误? –

+0

您必须先安装才能使用它。你应该能够在这里http://florentbr.github.io/SeleniumBasic/抓住它 – DuctTapeCoder

+0

我得到了硒的工具,那肯定是非常酷的。你把上面的代码放入Excel中的VBA代码中吗?我正在那样做,但它仍然是不正确的。 –