[[20140210170922]] 『web上にある、PDFをダウンロード』(あや) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『web上にある、PDFをダウンロード』(あや)

 http://www.ken3.org/vba/backno/vba120.html

 を参考にさせてもらい

 web上にある、PDFをダウンロードしようとしています

 'URLDownloadToFile API from URLMON.
 Private Declare Function URLDownloadToFile Lib "urlmon" Alias _
 "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal _
 szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

 Sub bbb()
    'IODATAのカタログをダウンロードしてみた
    Const strURL = "http://www.iodata.co.jp/products/pdf/20030809/memory_n-s-p.pdf"
    Dim strFNAME As String  'ダウンロード先(パス+ファイル名)
    Dim returnValue

    'ファイル名をブックのパス+test.pdfとする
    strFNAME = ThisWorkbook.Path & "\test.pdf"

    'URLDownloadToFile API をコールする
    returnValue = URLDownloadToFile(0, strURL, strFNAME, 0, 0)

    '結果の表示
    MsgBox "結果は:" & returnValue
    MsgBox strFNAME & "に保存されました"

 End Sub

 上記の記述で、IE6では必要な結果が得られます
 しかし
 IE9では、
 ダウンロード後のPDFファイルが、見当たらない(保存されていない)状態です
 VBAは問題なく進んで終了します

 IEのバージョンの問題なのか、教えて頂けませんか
 会社の環境が問題なのかもしれないですが、思いつく原因を切り分けたく

 よろしくおねがいします

< 使用 アプリ:Excel2003 Excel2010、使用 OS:NT 2008 >


URL間違えていませんか? 直接ブラウザで開けますか?
(テストしている最中に、URL先が削除されてしまったとか?)
(???) 2014/02/10(月) 17:38

 ???さんありがとうございます

 URLの間違いなく、直接ブラウザで開けています

 IE9でも問題なく動く記述という理解でずれていませんか?

 会社の環境でいろんな制限があるので

 そちらが原因かもしれないのですが、、
(あや) 2014/02/10(月) 21:46

http://www.iodata.co.jp/products/pdf/20030809/memory_n-s-p.pdf

このURLを、私のPCでは開けなかったことから、間違っていないか?、と聞いています。
IE以外のブラウザエンジンも幾つか試していますが、いずれもファイル無しになります。

PC内または社内のプロキシサーバ上のファイルがたまたま開けていただけ、ということは
ないでしょうか? 開けているIE6も、キャッシュ消去すると開けなくなるのでは?
(???) 2014/02/12(水) 08:37


確かに開けないですね。not found ですね。
(マテリアルサンタ) 2014/02/12(水) 08:48

 ???さんマテリアルサンタさん すみません

 not found でした。

 載せた記述はホームページからコピペのみで載せていました(URL変えていなかった)

 ファイル無しになって当然です、すみません、、

 現在、
 URLは http://www.iodata.jp/support/product/hdl-gtr/HDLGTRMAN.pdfにしています

(あや) 2014/02/12(水) 08:59


今度のファイルは、IE9でも問題なく保存されましたね。
気になるのは、 ThisWorkbook.Pathを使用していますが、ブックは保存してから実行していますか?
(???) 2014/02/12(水) 12:12

 ???さん ありがとうございます
 問題なく保存出来ましたか、、

 ブックは保存してから実行していますので
 記述の問題ではないのかも

 クラウドかセキュリティの関係かもしれないです
 わたしの脳みそでは仕方がないので
 手作業にします、、TдT
(あや) 2014/02/12(水) 15:15

プロキシ経由でWeb接続しているために、失敗しているのかも知れません。

DOSプロンプトで、netsh winhttp show proxy を実行してみてください。
windowsに対してプロキシ設定できているか確認できます。
(netsh winhttp import proxy source=ie とすれば、IEの設定に合わせます)
(???) 2014/02/12(水) 15:42


 ???さんなんどもありがとうございます

 わかったような、わかっていないので
 ひとまず教えて頂いたことを試してみました

 C:\users\000000>netsh winhttp show proxy
 現在の WinHTTP プロキシ設定:
 直接アクセス(プロキシサーバーなし)

 C:\users\000000>netsh winhttp import proxy source=ie
 プロキシ設定の書き込み中にエラーが発生しました。(5)アクセスが拒否されました。
 現在の WinHTTP プロキシ設定:
 直接アクセス(プロキシサーバーなし)
(あや) 2014/02/12(水) 16:17

windowsにプロキシ設定できていませんね。
DOSプロンプトを起動する際、右クリックして管理者実行してから再度試してください。
(???) 2014/02/12(水) 16:26

 ???さんありがとうございます
 右クリックで管理者として実行をすると
 コマンドプロンプトの黒画面が開くので
 そこに同じように入力しましたが

 netsh winhttp show proxy
 も
 netsh winhttp import proxy source=ie
 も
 さきほどと一緒でした。。
(あや) 2014/02/12(水) 16:37

管理者として実行した際、DOSプロンプトのタイトルは「管理者:コマンドプロンプト」になっていますか?
普通の「コマンドプロンプト」ならば、何か間違えています。

それとも、使用中のユーザーにAdministrator権限が無い? インストールしたのは誰でしょう?
(???) 2014/02/12(水) 17:54


正しく管理者権限になっているのに駄目な場合。
IEでは開けているのだから、IEの設定をコピーしてしまうのが簡単なのですが、以下の方法でも可能。
(同じエラーになるかなぁ?)

netsh winhttp set proxy proxy-server="http=プロキシサーバ:ポート番号"
(???) 2014/02/12(水) 18:06


 ???さん、考えて下さり、お時間ありがとうございます

 タイトルは、コマンドプロンプト(いつもと同じ)
  していることは、コマンドプロンプトを右クリックで
  管理者として開くを選択しているのですが、、

 何かが違うのでしょうね、、

 使用者のユーザーにAdministrator権限が無い?かどうかの確認方法がわからないのと
 インストールしたのは誰でしょう?というのは
 OSインストールといったことで大丈夫でしょうか
 OSであれば、クラウドサーバにあるため正直よくわかりませんーー;

 すみません、わからないことばかりです
(あや) 2014/02/13(木) 11:05

あっ、クラウド上にあるのはデータだけでなく、Excel本体もあるパターンですか。
それならばプロキシ設定等はサーバの管理者しか行えません。

クラウドの設定が問題なように思えますね。VBAマクロでWeb上のファイルをダウンロード
できなくなったんだけど、調べて!と、管理者に訴えかけましょう。
(???) 2014/02/13(木) 12:29


 ???さん わたしの説明不足のところ、ご理解頂き助かります

 一度、管理者に聞いてみます
(あや) 2014/02/13(木) 13:52

 ???さん 
 管理者が忙しくされていて聞けていないのですが、、

 少し自分で調べていて、気になったことがあり
 書き込みさせてもらいます

 >クラウド上にあるのはデータだけでなく、Excel本体もあるパターンですか
 これは、SBC方式と仮想PC方式のお話しといった理解でずれてはいないでしょうか?

 http://www.fmworld.net/biz/thinclient/
 このあたりのページを見ていて、
 ???さんが仰ってたことが、つながりがあるような?感じがしたので

 エクセルの質問とは違うのですが、教えていただけるとうれしいです
(あや) 2014/03/06(木) 11:30

はい、ご提示のURLのような製品を使うことで、アプリはサーバにだけインストールする形にできます。
(全PCへのインストールが不要とか、ライセンスがサーバー用の1台分で済む、という利点があります)

クラウドという表現とは違いますが、こんな環境を想像し、それならば管理者しか設定変更できないだろう、と考えました。
(???) 2014/03/06(木) 14:17


 ???さんありがとうございます

 なるほどです^^
 また勉強します
(あや) 2014/03/06(木) 15:26

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.