- ベストアンサー
WSHの使用法
毎日 同様な操作をするので WSHを活用して 少しでも効率を上げようとしております 操作内容ですが 1 定められた HPを開く 2 HPの内容をすべてコピー 3 コピーされた内容をエディーター(Mifes)で加工処理 4 加工されたデータを Excelに 貼り付ける このなかで 2 の HPの内容をすべてコピーするのに ブラウザーのメニューの編集から 1 すべてを選択(Ctrl+A) 2 コピー(Ctrl+C) を手動で操作しております この 2つの手動を WSHで 自動処理することができないでしょうか? アドバイスよろしくお願いします
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
1行目のurlを変更して拡張子を js で保存してください。 IEのバージョンによっては、「クリップボードへアクセスするのを許可しますか」と出ますので、その場合は6行目をClipboardCopy2に変更して下さい。 -- ここから var url = "http://www.yahoo.co.jp/"; var IE = WScript.CreateObject("InternetExplorer.Application"); IE.Visible = true; IE.Navigate(url); WaitLoad(); ClipboardCopy(IE.document.body.innerText); IE.Quit(); function ClipboardCopy(str) { IE.document.parentWindow.clipboardData.setData("text", str); } function ClipboardCopy2(str) { var OLECMDID_COPY = 12, OLECMDID_SELECTALL = 17; IE.Navigate("about:blank"); WaitLoad(); IE.document.body.innerText = str; IE.execWB(OLECMDID_SELECTALL, 0); IE.execWB(OLECMDID_COPY, 0); } function WaitLoad() { do { WScript.Sleep(1000); } while (IE.Busy || IE.Document.readyState!="complete"); } -- ここまで ちなみにIEのバージョンの違いなのか、コピーされる内容が違うようです。 XP(SP3)+IE6ではCtrl-A+Ctrl-Cとほぼ同じでしたが、Win7(SP1)+IE9では<!-- -->など若干のタグもコピーされてしまいました。IEのバグなんじゃないかと思いますが。
お礼
ClipboardCopy2 で うまくいきました ただし WHS(拡張子がVBS)で 作成しておりますので JSからVBSに 変換できますか できれば VBSで 統一したいのですが アドバイス いただけると 助かります