2016-07-02 84 views
-2

vbaコードを使用してGoogleドライブからExcelファイルをダウンロードしようとしています。ファイルはこのパスC:/MyDownloads/seriall.xlsxにダウンロードされます。しかし、最初のシートにダウンロードされたExcelファイルの上に、奇妙なテキストが追加されます。そして、私はまたあなたが開こうとしているファイルが指定されたものとは異なるフォーマットであるというメッセージでポップアップメッセージを取得します。だから私はこのポップアップを通過するためにはいをクリックすると、エラーのポップアップが表示されないCSSファイルが表示されます。なぜこれが起こり、なぜ私のダウンロードしたExcelファイルにこれらのエラーが表示されるのですか?私のデータは、奇妙なテキストの一番下にも表示され、その上にExcelが追加されます。vbaを使用してGoogleドライブからExcelファイルをダウンロードするにはどうすればよいですか?

FILECOPY GetSpecialFolder(vbDirGoogleDrive)& "seriall.xlsx"、「C:/マイダウンロード/、あなたが、同じくらい簡単として任意のクラウドドライブからファイルをダウンロードすることができます 'GetSpecialFolder' UDFを使用して

Dim FileNum As Long 
Dim FileData() As Byte 
Dim MyFile As String 
Dim WHTTP As Object 

On Error Resume Next 
    Set WHTTP = CreateObject("WinHTTP.WinHTTPrequest.5") 
    If Err.Number <> 0 Then 
     Set WHTTP = CreateObject("WinHTTP.WinHTTPrequest.5.1") 
    End If 
On Error GoTo 0 

MyFile = "https://docs.google.com/spreadsheets/d/1e6DNpw3y5NrMR9cNLmIZdPYO79WLui7mua5I-5pEyKo/edit?usp=sharing" 

WHTTP.Open "GET", MyFile, False 
WHTTP.send 
FileData = WHTTP.ResponseBody 
Set WHTTP = Nothing 

If Dir("C:\Downloads", vbDirectory) = Empty Then MkDir "C:\Downloads" 

FileNum = FreeFile 
Open "C:\Downloads\serial.xls" For Binary As #FileNum 
    Put #FileNum, 1, FileData 
Close #FileNum 

MsgBox "Open the folder [ C:\Downloads ] for the " 
+0

公開されたサイトでこの[優秀な回答](http://stackoverflow.com/questions/17877389/how-do-i-download-a-file-using-vba-without-internet-explorer)をテストしてみてください。あなたのバージョンは.xlsファイルではないテキストファイルライターを使用します。 – Parfait

+0

@Zesaneあなたが参照している人々はすべてボランティアであり、このコミュニティの外に人生と責任があります。質問を投稿するだけで応答が保証されない場合や、応答が今後数日かかる場合があります。多くの質問には、ほんのわずかしか所有できないという特別な知識が必要です。答えを得るには時間がかかるかもしれませんが、あなたの最初のコメントのようなものを投稿することによって、そうでなければ助けてくれた人を妨げる可能性があります。忍耐若いパダン。 –

+0

このメタ・ディスカッションを参照してください:http://meta.stackoverflow.com/questions/326569/under-what-c​​ircumstances-may-i-addenturgent-or-other-similar-phrases-to-my-quest –

答えて

1

seriall.xlsx」あなたが使用することもでき

http://www.EXCELGAARD.dk/Lib/GetSpecialFolder/

FILECOPY GetSpecialFolder( vbDirGoogleDrive)& "seriall.xlsx"、GetSpecialFolder(vbDirDownloads)& "seriall.xlsx" *

あなたも、たとえば、GoogleドライブとDropboxの間でファイルを移動することができます。

FILECOPY GetSpecialFolder(vbDirGoogleDrive)& " seriall.xlsx」、GetSpecialFolder(vbDirDropbox)& "seriall.xlsx" *

-1

Sub Basic_Web_Query() Dim chromePath As String Sheets("Sheet2").Select Range("A2").Select Selection.Copy Shell ("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe") SendKeys "^v" SendKeys "~" Application.Wait (Now + TimeValue("00:00:10")) SendKeys "^a" SendKeys "^c" Application.Wait (Now + TimeValue("00:00:10")) Sheets("Sheet1").Select Range("A1").Select ActiveSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:= _ False End Sub 

、コードの下に試してみてください
関連する問題