返回列表 上一主題 發帖

[發問] VBA 下載網頁檔案

[發問] VBA 下載網頁檔案

本帖最後由 li_hsien 於 2014-3-27 11:44 編輯

藉由EXCEL儲存格輸入文件編號
按下按鈕下載網站上這份文件編號的檔案

以下是我爬文後初步的寫法

由於要下載檔案需要經過三個網站畫面

我已經能到最後放檔案的那個畫面了

可是檔案不知怎麼下載下來

但由於網站是公司內部網站

所以瀏覽不到 小弟我僅能附圖 煩請指教  謝謝

第一個畫面
輸入編號(抓A1欄位的值)按下搜尋


進到第二個畫面
再直接點選編號名稱(超連結)


進到第三個畫面
紅框部分為我要下載的PDF檔(檔名修改為EXCEL儲存格A1的值)


目前小弟語法能夠到第三個畫面

可是不知檔案如何下載下來

另外 我想在下載下來後
回到畫面1,新輸入EXCEL儲存格A2的值
繼續下載PDF檔
  1. Option Explicit
  2. Sub 資訊網頁()
  3.     Dim A As Object, B As Object
  4.     With CreateObject("InternetExplorer.Application")
  5.         .Visible = True
  6.         .Navigate "網址"

  7.         Do While .ReadyState <> 4 Or .Busy: DoEvents: Loop
  8.       
  9.             For Each A In .document.getelementSbyTAGNAME("INPUT")
  10.                 If A.Name = "number" Then A.Value = Range("A1")     '在EXCEL表單輸入所要搜尋的值
  11.                 If A.Value = "搜尋" Then
  12.                     A.Click     '按下 搜尋
  13.                     Exit For
  14.                 End If
  15.             Next
  16.             
  17.             Do While .ReadyState <> 4 Or .Busy: DoEvents: Loop
  18.             
  19.             For Each B In .document.getelementSbyTAGNAME("A")
  20.             
  21.                 If B.innerText = Range("A1") Then     '再點入搜尋到的值(超連結方式)
  22.                     B.Click  
  23.                     Exit For
  24.                 End If
  25.                
  26.             Next

  27.     End With

  28. End Sub
複製代碼
麻煩各位大大  謝謝
用功到世界末日那一天∼∼∼

我後來爬文找到的方式
大多都是這樣下載的
  1. URLDownloadToFile 0, "來源網址", "目的路徑", 0, 0
複製代碼
可是好像只適用在下載的檔案位置最後顯示為副檔名(.pdf)

但我的網站最後不是.pdf

可是他實際上點進去就是一份PDF檔

只是我要點旁邊的儲存,或是對超連結按右鍵另存

不知怎樣才能用語法下載



請教各位大大

謝謝
用功到世界末日那一天∼∼∼

TOP

        靜思自在 : 自己害自己,莫過於亂發脾氣。
返回列表 上一主題