人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル(OfficeXP)で、Webサーバからcsvをダウンロードしてインポートする方法(VBA)のサンプルはありませんか?


●質問者: P-mako
●カテゴリ:ウェブ制作
✍キーワード:CSV VBA Web インポート エクセル
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kaminoitte
●1ポイント

http://www2s.biglobe.ne.jp/~iryo/

ExcelVBA便利帳

こういうのですか?

◎質問者からの返答

どれのことでしょうか?それらしきが見つからなかったので、再回答いただけると助かります。


2 ● andi
●59ポイント

WebサーバからファイルをダウンロードするにはxmlHttpRequestが楽ですね(XMLファイルじゃなくてもできます)。


Dim data As String

Dim req As Object

Set req = CreateObject(”Microsoft.xmlhttp”)


With req

Call .Open(”GET”, ”http://your_server/sample.csv”, True)

Call .send(vbNull)

If .readyState <> 4 Or .Status <> 200 Then

’ エラー処理

End If

data = .responseText

End With


ファイルをインポートするには一度ファイルに書き出してからエクセル固有のインポート機能を使うと便利だと思います。


’ ファイルに書き出し

Open ”sample.csv” For Output As #1

Print #1, data

Close #1


’ インポート

Call Workbooks.OpenText(”sample.csv”, , , xlDelimited, , , , , True)


以上

◎質問者からの返答

すばらしいです。

こういう回答を期待してました。

ただ、サンプルを実践しましたが、エラーになります。

data = .responseText

のステートメントで

「実行時エラー’-2147467259 (80004005)’

エラーを特定できません」

というVBのデバッグを促すダイアログが出ます。

ちなみにresponseTextの内容が、<システムエラー:-1072896658>となっています。

当然CSVのURLは、ieで直接開ける文字列をコピーペーストしています。

OfficeXPといっておきながら、Excel2000で試しているからでしょうか?

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ