質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

Q&A

解決済

3回答

2933閲覧

IEをオートメーション出来るプログラミング言語(エクセルVBA以外)

Susanoo2442

総合スコア153

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

0グッド

0クリップ

投稿2017/05/23 13:04

お世話になります。
タイトルの通りです。

IEをマクロで自動制御出来るプログラミング言語を知りたいです。

エクセルVBAで事は足りるのですが、エクセルが付いている事がどうも気にくわないので、それ以外で教えて頂ければと存じます。また、同系統のAccessのマクロなども、対象外でお願い致します。

VBAScriptなども考えたのですが、GUIを作った時にスマートでは無い為、断念致しました。

GUIが開発出来て、尚且つマクロ単体でプログラムを実行出来る言語を、ご教示して頂ければと存じます。宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

重複して恐縮ですが、IEによるウインドウオブジェクトを10個操るコードが次のコードです。

VBS

1' オブジェクト指向プログラミングモデル ウインドウクラス window_object1.vbs 2Option Explicit 3Class window_class 4 Private objIE 5 Private namae 6 Private hyoujibun 7 Private tate,iro,moji 8 9' ウインドウクラスの実体時動作 10 Private Sub Class_Initialize 11 namae="窓1" 12 iro="lightgreen" 13 Set objIE = CreateObject("InternetExplorer.Application") 14 objIE.Visible = true 15 objIE.Top =50 16 objIE.Left = 100 17 objIE.Width = 300 18 objIE.Height = 200 19 objIE.Navigate("about:blank") 20 objIE.StatusBar = False 21 objIE.ToolBar = 0 22 objIE.Document.Write("<html><head><title>ウインドウ オブジェクト " & namae & "</title></head>") 23 objIE.Document.Write("<body bgcolor='" & iro & "'>") 24 objIE.Document.Write("<div id='div-id-1'></div><br>") 25 objIE.Document.Write("<div id='div-id-2'></div><br>") 26 objIE.Document.Write("<div id='div-id-3'></div><br>") 27 objIE.Document.Write("</body></html>") 28 End Sub 29 30' ウインドウクラスの解放時動作 31 Private Sub Class_Terminate 32 MsgBox "ウインドウオブジェクト " & namae & " 解放",vbOKOnly+vbInformation,"ウインドウオブジェクト インスタンス " & namae 33 End Sub 34 35' ウインドウクラスの名称指定 36 Public Sub set_namae(meisyou) 37 namae = meisyou 38 End Sub 39 40' ウインドウクラスの名称獲得 41 Public Function get_namae() 42 get_namae = namae 43 End Function 44 45' ウインドウ内文字埋め込み 46 Public Sub moji_hyouji(moji) 47 objIE.Document.getElementById("div-id-1").InnerText=moji 48 End Sub 49 50' ウインドウ位置指定 51 Public Sub idou(x, y) 52 objIE.Left = x 53 objIE.Top = y 54 End Sub 55 56' ウインドウのサイズ変更 57 Public Sub henkei(w,h) 58 objIE.Width=w 59 objIE.Height=h 60 End Sub 61 62' 背景色指定 63 Public Sub ironuri(iro) 64 objIE.Document.bgColor = iro 65 End Sub 66 67' ウインドウ情報表示 68 Public Sub jyouhou_hyouji() 69 MsgBox "ウインドウオブジェクト " & namae & " サイズ ",vbOKOnly+vbInformation,namae & " ウインドウ 情報" 70 End Sub 71 72' ウインドウを閉じる 73 Public Sub tojiru() 74 objIE.Quit 75 End Sub 76 77End Class 78 79' --------------------------------- 80' | ウインドウオブジェクトを操る | 81' --------------------------------- 82Dim hyoujibun 83Dim w1, w2, w3, w4, w5, w6, w7, w8, w9, w10 84Dim yoko,tate,haba,takasa,iro,moji 85 86' ウインドウ w1を実体化 87hyoujibun = "ウインドウ w1を実体化" & vbCr 88MsgBox hyoujibun,vbOKOnly+vbInformation,"ウインドウオブジェクト インスタンス w1" 89Set w1 = new window_class 90 91' ウインドウオブジェクト ウインドウ1に名前をセット 92hyoujibun = "ウインドウオブジェクト w1 に ウインドウ1と名付ける。" & vbCr 93w1.set_namae("ウインドウ1") 94w1.idou 10,10 95w1.moji_hyouji "草原" 96 97Set w2 = new window_class 98w2.set_namae("ウインドウ2 ") 99w2.ironuri("white") 100w2.moji_hyouji "電子計算機" 101w2.idou 230,10 102 103Set w3 = new window_class 104w3.set_namae("ウインドウ3 ") 105w3.ironuri("olive") 106w3.moji_hyouji "うぐいすパン" 107w3.idou 460,10 108 109Set w4 = new window_class 110w4.set_namae("ウインドウ4 ") 111w4.ironuri("seagreen") 112w4.moji_hyouji "サボテン" 113w4.idou 690,10 114 115Set w5 = new window_class 116w5.set_namae("ウインドウ5 ") 117w5.ironuri("indigo") 118w5.moji_hyouji "蒼天" 119w5.idou 10,250 120 121Set w6 = new window_class 122w6.set_namae("ウインドウ6 ") 123w6.ironuri("purple") 124w6.moji_hyouji "ラベンダー" 125w6.idou 230,250 126 127Set w7 = new window_class 128w7.set_namae("ウインドウ7 ") 129w7.ironuri("blue") 130w7.moji_hyouji "ジーンズ" 131w7.idou 460,250 132 133Set w8 = new window_class 134w8.set_namae("ウインドウ8 ") 135w8.ironuri("pink") 136w8.moji_hyouji "桜の花" 137w8.idou 690,250 138 139Set w9 = new window_class 140w9.set_namae("ウインドウ9 ") 141w9.ironuri("grey") 142w9.moji_hyouji "灰色" 143w9.idou 80,500 144 145Set w10= new window_class 146w10.set_namae("ウインドウ10") 147w10.ironuri("yellow") 148w10.moji_hyouji "卵焼き" 149w10.idou 450,500 150 151msgbox "ウインドウを閉じます。" 152w1.tojiru() 153w3.tojiru() 154w5.tojiru() 155w7.tojiru() 156w9.tojiru() 157w10.tojiru() 158 159Set w1 = Nothing

拡張子.vbsで保存し、ダブルクリックするとウインドウがうじゃうじゃと出てきて、オブジェクトが生き物のように見えてくる趣向です。

一応、LZHファイルながらダウンロード先がオブジェクト指向プログラミング入門キットです。興味があれば動作させてみて下さい。

投稿2017/05/23 14:02

編集2017/05/23 14:19
seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

seastar3

2017/05/23 14:25

VBSはメモ帳で手軽にプログラミングでき、セットできるオブジェクトも多様なので、プログラミング教育環境として取っつきやすいところがいいと思います。 個人的には、小学生のプログラミング教育においてもVBSで5行以下のショートプログラムを打ち込んで動作させたら、興味付けできて導入になるのではないかと考えます。
guest

0

教材用にウインドウの操作をクラス定義して操るためにIEオブジェクトを操作するVBSのコードを以前書きました。
CreateObject("InternetExplorer.Application")関数により、IEのオブジェクトを宣言し、各プロパティやメソッドを有効に活用していきます。IEオブジェクトなので、内容のDocumentにHTMLタグが使えます。

VBS

1' オブジェクト指向プログラミングモデル ウインドウクラス window_object1.vbs 2Option Explicit 3Class window_class 4 Private objIE 5 Private namae 6 Private hyoujibun 7 Private tate,iro,moji 8 9' ウインドウクラスの実体時動作 10 Private Sub Class_Initialize 11 namae="窓1" 12 iro="lightgreen" 13 Set objIE = CreateObject("InternetExplorer.Application") 14 objIE.Visible = true 15 objIE.Top =50 16 objIE.Left = 100 17 objIE.Width = 300 18 objIE.Height = 200 19 objIE.Navigate("about:blank") 20 objIE.StatusBar = False 21 objIE.ToolBar = 0 22 objIE.Document.Write("<html><head><title>ウインドウ オブジェクト " & namae & "</title></head>") 23 objIE.Document.Write("<body bgcolor='" & iro & "'>") 24 objIE.Document.Write("<div id='div-id-1'></div><br>") 25 objIE.Document.Write("<div id='div-id-2'></div><br>") 26 objIE.Document.Write("<div id='div-id-3'></div><br>") 27 objIE.Document.Write("</body></html>") 28 End Sub 29 30' ウインドウクラスの解放時動作 31 Private Sub Class_Terminate 32 MsgBox "ウインドウオブジェクト " & namae & " 解放",vbOKOnly+vbInformation,"ウインドウオブジェクト インスタンス " & namae 33 End Sub 34 35' ウインドウクラスの名称指定 36 Public Sub set_namae(meisyou) 37 namae = meisyou 38 End Sub 39 40' ウインドウクラスの名称獲得 41 Public Function get_namae() 42 get_namae = namae 43 End Function 44 45' ウインドウ内文字埋め込み 46 Public Sub moji_hyouji(moji) 47 objIE.Document.getElementById("div-id-1").InnerText=moji 48 End Sub 49 50' ウインドウ位置指定 51 Public Sub idou(x, y) 52 objIE.Left = x 53 objIE.Top = y 54 End Sub 55 56' ウインドウのサイズ変更 57 Public Sub henkei(w,h) 58 objIE.Width=w 59 objIE.Height=h 60 End Sub 61 62' 背景色指定 63 Public Sub ironuri(iro) 64 objIE.Document.bgColor = iro 65 End Sub 66 67' ウインドウ情報表示 68 Public Sub jyouhou_hyouji() 69 MsgBox "ウインドウオブジェクト " & namae & " サイズ ",vbOKOnly+vbInformation,namae & " ウインドウ 情報" 70 End Sub 71 72' ウインドウを閉じる 73 Public Sub tojiru() 74 objIE.Quit 75 End Sub 76 77End Class 78 79' --------------------------------- 80' | ウインドウオブジェクトを操る | 81' --------------------------------- 82Dim hyoujibun 83Dim w1, w2 84Dim yoko,tate,haba,takasa,iro,moji 85 86' ウインドウ w1を実体化 87hyoujibun = "ウインドウ w1を実体化" & vbCr 88MsgBox hyoujibun,vbOKOnly+vbInformation,"ウインドウオブジェクト インスタンス w1" 89Set w1 = new window_class 90 91' ウインドウオブジェクト ウインドウ1に名前をセット 92hyoujibun = "ウインドウオブジェクト w1 に ウインドウ1と名付ける。" & vbCr 93w1.set_namae("ウインドウ1") 94 95iro=inputbox( "背景色は (#16進数表記も可)") 96w1.ironuri(iro) 97 98moji=inputbox( "表示したい文字を打ち込んで下さい。") 99w1.moji_hyouji(moji) 100 101haba=inputbox( "横幅は?") 102takasa=inputbox( "高さは?") 103w1.henkei haba,takasa 104 105yoko=inputbox( "横位置は?") 106tate=inputbox( "縦位置は?") 107w1.idou yoko,tate 108 109msgbox "ウインドウを閉じます。" 110w1.tojiru() 111 112Set w1 = Nothing

以上のコードの上半分がメソッド集で、下半分が実行コードです。

1 ウインドウクラスの構成要素は
(ア) ウインドウオブジェクトの状態を記録する変数(プロパティ)を決めます。
•ウインドウ名(namae) 入力表示文(hyoujibun) 入力背景色(iro)
•ウインドウ上隅座標(objIE.Top) ウインドウ左隅座標(objIE.Left)
•ウインドウ幅(objIE.Width) ウインドウ高さ(objIE.Height)
•ウインドウ内の文字表示枠1(objIE.Document.getElementById(“div-id-1”).InnerText)
•ウインドウ背景色(objIE.Document.bgColor)

(イ) ウインドウオブジェクトの操作方法(メソッド)をプログラミングします。
•a.ウインドウクラスの名称指定 → set_namae()
•b.ウインドウクラスの名称獲得 → get_namae()
•c.ウインドウ内文字埋め込み → moji_hyouji()
•d.ウインドウ位置指定 → idou()
•e.ウインドウのサイズ変更 → henkei()
•f.ウインドウの背景色指定 → ironuri()
•g.ウインドウ情報表示 → jyouhou_hyouji()
•h.ウインドウを閉じる → tojiru()

2 できあがったオブジェクトの操作

(ア) オブジェクトを実体化(インスタンス化)します。

―ウインドウを開き名前を与える ―

例 Set w1 = new window_class(ウインドウ w1を実体化)

(イ) 実体化したオブジェクト(インスタンス)を操作します。

例 w1.henkei 400,150 (w1の大きさを横400ピクセル × 縦150ピクセルに変形する)

(ウ) 実体化したオブジェクト(インスタンス)を解放します。

例 Set w1 = Nothing(w1をクリアにする)

以上のように操ると手軽にIEオブジェクトによる自作のウインドウを発生させ操ることができます。

投稿2017/05/23 13:56

seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

GUIをどういったレベルで考えてるのか分かりませんが
HTMLレベルでいいなら HTAはどうでしょ?

http://itpro.nikkeibp.co.jp/article/COLUMN/20060116/227312/

投稿2017/05/23 13:25

takasima20

総合スコア7458

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問