• ベストアンサー

WSHの使用法

毎日 同様な操作をするので WSHを活用して 少しでも効率を上げようとしております 操作内容ですが  1 定められた HPを開く  2 HPの内容をすべてコピー  3 コピーされた内容をエディーター(Mifes)で加工処理  4 加工されたデータを Excelに 貼り付ける このなかで 2 の HPの内容をすべてコピーするのに  ブラウザーのメニューの編集から 1 すべてを選択(Ctrl+A)   2 コピー(Ctrl+C) を手動で操作しております この 2つの手動を WSHで 自動処理することができないでしょうか? アドバイスよろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • luka3
  • ベストアンサー率72% (424/583)
回答No.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のバグなんじゃないかと思いますが。

skkyam
質問者

お礼

ClipboardCopy2 で うまくいきました ただし WHS(拡張子がVBS)で 作成しておりますので JSからVBSに 変換できますか できれば VBSで 統一したいのですが アドバイス いただけると 助かります

関連するQ&A