Board logo

標題: google 雲端硬碟 資料夾下載 [打印本頁]

作者: pideo    時間: 2015-11-4 21:30     標題: google 雲端硬碟 資料夾下載

小弟目前使用google的雲端硬碟
並且將數百個已建立好的excel上傳到雲端硬碟的一個A資料夾
同時將這個資料夾開啟網路共用
目前可以手動自己點選資料夾然後右鍵會跳出可以點選下載的選項,按下載google會將該資料夾轉成zip壓縮檔然後下載
但想請問一下該如何使用vba來自動下載這個資料夾
因為小弟連續測試了好幾次手動下載,下載的網址每次都不一樣@@~~~~~~
而小弟需要每天固定時間好幾次將檔案下載後解壓縮更新電腦相同檔案的excel檔
如果要手動下載可能會瘋掉
所以想詢問有沒有大大可以指導一下這google變動網址的vba該怎麼寫
感恩
作者: pideo    時間: 2015-11-4 21:38

本帖最後由 pideo 於 2015-11-4 21:40 編輯

ps.如果是google雲端檔案的部分由於有固定網只所以小弟有寫了個以下的vba可以正確運行,但這方法只有google檔案固定網址部分可以這樣用,但是小弟資料夾裡面有上百個excel檔@@~~~要一個一個將網址弄出應該會弄到天荒地老
所以才想直接將整個資料夾手動按一次下載就解決,但是需要固定時間頻繁的下載就希望能使用vba自動做這件事,但資料夾是變動網址該如何解決,因為不知道google每次發出來的網址到底是哪個@@~~~~

Sub 下載()
    '從google drive下載檔案
    Dim myURL As String
    Dim WinHttpReq As Object
       myURL = "https://docs.google.com/spreadsheets/d/1v4Me4vd9nviQ6nLAm9L7Ax5RVYEZOf-Bw563HZVUiIs/pub?output=xlsx" '來源檔案
    Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
    WinHttpReq.Open "GET", myURL, False
    WinHttpReq.Send
    myURL = WinHttpReq.ResponseBody
    If WinHttpReq.Status = 200 Then
       Set oStream = CreateObject("ADODB.Stream")
       oStream.Open
       oStream.Type = 1
       oStream.Write WinHttpReq.ResponseBody
       oStream.SaveToFile ("D:\1000.xlsx")
       oStream.Close
    End If
End Sub
作者: pideo    時間: 2015-11-4 22:25

小弟找到解決方法了
google app有提供一個Direct Link的外掛
可以直接將全部上百個excel檔的網址一次全部直接解析出來
直接全部複製使用就可以了
作者: z135426    時間: 2015-11-6 22:33

感謝分享∼
又學到新的東西了!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)