1273732133 環境:WindowsXP、Excel2003、IE6

手動では下記のような操作を実行します。
1.「ダウンロード」aタグをクリック。
2.「ファイルのダウンロード」ウィンドウ開く。「保存(S)」クリック
3.「名前をつけて保存」ウィンドウ開く。ファイル名入力。「保存(S)」クリック
4.「ダウンロードの完了」ウィンドウ開く。「閉じる」クリック
この2-4をVBAで自動化したいと考えています。

http://www.moug.net/faq/viewtopic.php?t=48813
には下記URLによって解決したと報告されています。
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200901/09010002.txt
しかし、ここにあるFileDownLoad_Procプログラムを見ても依然として2の「保存(S)」クリックができません。
さらに、ファイル名に特定の文字列を入力できません。
このプログラムをそのまま使っても上記以外は正常に動作します。
どなたかお解かりの方ご教示ください。

回答の条件
  • URL必須
  • 1人5回まで
  • 13歳以上
  • 登録:2010/05/13 15:28:55
  • 終了:2010/05/20 15:30:03

回答(3件)

id:spyglass No.1

spyglass回答回数455ベストアンサー獲得回数292010/05/13 17:15:12

ポイント27pt

Windows上のでの反復(マクロ)でしたらExcelを使わなくてもUWSCを使われた方が簡単ですよ。

「UWSC」

http://www.uwsc.info/

一度だけマウスを操作すればビデオの録画の様に自動でコードを作成してくれます。

あとは出来上がったコードを実行するだけで同じ操作が出来ますよ。

id:dositaraiino

早速のご回答有難うございました。

「UWSC」のプロ的な使い方を知らないので間違っているかもしれませんが以下の理由で使えないと考えています。

1. できるだけ不特定多数の人にプログラムが実行できる環境にしたい。

MS Officeなら新たなインストールは不要だが、

UWSCなら別途インストールしてもらう必要がある。

2. ダウンロードのファイルネームをサーバーが自動で付してくれる名前で良いのならUWSCでもOKだと思いますが、付加情報を加えたい。

3. ダウンロードの件数が変動するケース及び個人のPC設定でダウンロード釦の位置が変わるためUWSCで共通のアプリが提供できない。

違っていたらご教示ください。

コメント1返事

> IE7とIE6で 保存ボタンのハンドルの取得の仕方が違うのかも しれん。

EnumChildWindowsでも確認しましたが、ハンドルは正しく取れています。

「保存ボタンを押す」コードが違うと思います。

参照したコードの意味が理解できていません。

もし、お解かりでしたら他の方法も含めご教示ください。

2010/05/14 13:56:14
id:kick_m No.2

kick_m回答回数1372ベストアンサー獲得回数542010/05/15 14:51:59

id:dositaraiino

ご回答有難うございます。

私のVBAの環境は「Visual Basic 6.5」です。

他の社員の環境を考えて、できればこの環境に参照設定を追加して目的を達成したいのですが無理でしょうか?

もし、どうしてもだめなら「Visual Basic 2010 Express Edition」↓に変更します。

http://homepage1.nifty.com/rucio/main/material/VB2010Install.htm

ご返事ください。

2010/05/17 09:48:53
id:maxpower No.3

MAXPOWER回答回数520ベストアンサー獲得回数242010/05/19 17:18:40

ポイント26pt

コメント欄でtakntさんがおっしゃているとおりでは?

http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200902...

id:dositaraiino

EnumChildWindowsでも確認しましたが、

hDlg = FindWindowA("#32770", "ファイルのダウンロード")

hDlg2 = FindWindowEx(hDlg, 0&, "Button", "保存(&S)")

上記でハンドルは正しく取れています。

さらに、WM_ACTIVATEでも「保存」にフォーカスが移動するのがわかります。

PostMessageA hDlg2, WM_IME_KEYDOWN, VK_RETURN, 0&)

で反応はしますが、キャンセルをクリックしてしまいます(フォーカスを「保存」に移動してあっても)。

どうしたらいいのか策が無く弱っています。

2010/05/20 10:32:37

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません