Excelを開くと、Sharepointに保存されているアドインの最新バージョンをダウンロードして開く必要があります。私はアドインをダウンロードし、特定の場所(strSavePath)に保存してそれを開こうとするこのコードを持っています。VBAを使用してSharepointからexcelアドインをダウンロードする
Function funLoadRomeFiles(strURL As String, strSavePath As String)
Dim objConnection As Object
Dim objStream As Object
Set objConnection = CreateObject("MSXML2.ServerXMLHTTP.6.0")
On Error GoTo ExitConnect
objConnection.Open "GET", strURL, False
objConnection.send
strURL = objConnection.responseBody
If objConnection.Status = 200 Then
Set objStream = CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.Write objConnection.responseBody
objStream.SaveToFile strSavePath, 2
objStream.Close
End If
ExitConnect:
On Error GoTo 0
Shell "C:\WINDOWS\explorer.exe """ & strSavePath & "", vbHide
End Function
しかし、2番目から最後の行にエラーが発生します。エラー:Excelは、ファイル形式またはファイル拡張子が有効でないためにファイル "Filename"を開くことができません[...] "。ダウンロードしたファイルが破損していて手動で開くこともできません。
ファイルサイズは30.9 kbですが、コードを実行すると51 KBファイルがダウンロードされます。このコードを使用して他のファイルをダウンロードしようとしましたが、実際のファイルサイズです。ファイルが壊れないようにコードを変更する方法はありますか?他の方法でファイルを変更する方法はありますか?
更新:ファイル名はまだ変わっていません。 xlam
また、私は、 "filename.xlam"で終わり、 "filename.xlam?csf = 1 & e = b5f7991021ab45c1833229210f3ce810"で終わるリンクを使用しようとしましたが、両方とも同じ結果が得られます。両方ともすぐに正しいファイルをダウンロードします
は、ノートブックでファイルを開いてみてください。適切なExcelワークブックですが、奇妙な文字(üGÝ~Ý)Äd/ùƒ†Â'ýðkRが表示されます。しかし、私はいくつかのxlmコードが表示されると思う。私が正しいのかどうか知らせてください。 – MarcinSzaleniec
@MarcinSzaleniec私はメモ帳++で開こうとしましたが、実際には読めるようになりました。 HTMLのようです、それはで始まる:<!DOCTYPE HTML> P å DITTのkonto <メタしようとした開口部内で
これはVBAの問題ではありません。 Sharepointに問題があります。おそらくファイアウォールに問題があります。 – MarcinSzaleniec