前回の続きじゃ。VBSの解説じゃ。
発行日時: 2008/1/27
では今回は前回の Visual Basic Script で作った「test.vbs」の説明じゃ。
難しいかも知れんが文字を置き換えるだけで応用が利くから便利じゃぞ。
ではもう一度構文を示す。
折り返しているところはつなげてくれよ。
↓↓↓ここから↓↓↓
Call test()
Sub test()
Dim test
test = msgbox("テストしますか?",4,"確認")
If test <> 6 Then
msgbox "中止します"
WScript.Quit
End If
Dim objXL
Set objXL = WScript.CreateObject("EXCEL.Application")
strPath = (CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test")
strPath1 = (CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test\test.xls")
Set objFS = CreateObject("Scripting.FileSystemObject")
If objFS.FolderExists(strPath) Then
If objFS.FileExists(strPath1) Then
objXL.Visible = True
objXL.Workbooks.Open(CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test\test.xls")
Else
msgbox("「test」フォルダに「test.xls」がありません。")
End If
Else
msgbox("デスクトップに「test」フォルダがありません。")
End If
End Sub
↑↑↑ここまで↑↑↑
最初の
Call test()
Sub test()
と終りの
End Sub
これはプログラムの約束事じゃと覚えておけい!
必ず
Call **プログラム名**()
Sub **プログラム名**()
プログラム構文
End Sub
の格好になる。
Dim test
これは test という変数を作ったということじゃ。
test = msgbox("テストしますか?",4,"確認")
msgbox これはメッセージボックスというて「はい」「いいえ」のボタンや
「キャンセル」または「OK」だけだったりする。
どこで変更するかというと「4」という数字がそれじゃ。
試しに4を2に置き換えてプログラムを動かしてみよ。
「中止」「再試行」「無視」というボタンになるはずじゃ。
時間があればいろんな数字を入れてみるがよい。
"確認"はメッセージボックスについた題目じゃ。
このボタンにはボタンによって決まった値があるのじゃ。
今回は「はい」と「いいえ」じゃが、「はい」のボタンには'6’という数字
が割り当てられておる。
「はい」ボタンを押すと変数「test」には6という数字が入るのじゃ。
そこで変数「test」が6以外の数字ならば作業を中止するというのが以下の
構文じゃ。
If test <> 6 Then →→ここはtestが6以外の数字か調べておる
<>この記号は=(イコール)の反対じゃ
日本語で言うと「もしもtestが6でなかったら」
msgbox "中止します" →6でなかったら中止しますとメッセージを出す
WScript.Quit →プログラム中止の命令じゃ。
End If →If〜Then から始まる時は必ず最後にEnd Ifをつける
これでIf文は終わったという印じゃ。
If文が複数あるときは内側同士が対になる。
If *** Then →A
****
If *** Then →B
****
End if →B
End if →A
内側同士、外側同士が対になるのでちとややこしいかも知れんな。
End ifを付け忘れるとエラーになるぞ。
次じゃ。
Dim objXL
やはりobjXLという変数を作ったのじゃが
Set objXL = WScript.CreateObject("EXCEL.Application")
こんどはそこにエクセルというアプリケーションをセットしたということな
んじゃ。
エクセルをセットする時は変数 objXL を使うことが一般的じゃ。
ここは公式じゃとサラッと理解せい。
strPath = (CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test")
strPath これも変数じゃがパス名を代入しておるのじゃ。
strPath = より右の部分は本来ならば
"C:\Documents and Settings\おぬしのフォルダ名\デスクトップ\test"
というように各自のパソコン固有のパスになるべきところじゃがパソコンが
変わるとパソコン固有のパスが使えなくなるので
誰のデスクトップでも共用できるように作ったのが下記の構文じゃよ。
(CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test")
この構文でデスクトップ上の「test」フォルダのパス名が表示される。
strPath1 = (CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test\test.xls")
これは同じくデスクトップ上の「test」フォルダの中の「test.xls」のパス名をstrPath1に代入しておるのじゃ。
更に難しいかも知れんが
If objFS.FolderExists(strPath) Then
objFS.FolderExists この部分はフォルダーの有無を調べるところじゃ。
よって上のstrPathに代入されたパス名のフォルダがあると次に進むのじゃ。
無ければ、「デスクトップに「test」フォルダがありません。」とメッセー
ジボックスがでる。
Else とはIfで始まる構文で「もしそうでなければ・・こうです」という
使い方をする。
あれば、次に進み
If objFS.FileExists(strPath1) Then
strPath1に代入された「test.xls」ファイルがデスクトップにあれば次へ進
む。
無ければメッセージボックス「「test」フォルダに「test.xls」がありませ
ん。」とでる。
あれば、次に進むので
objXL.Visible = True →これはエクセルを起動するということ
そして、ワークブックを開くということが下記の構文じゃ。
objXL.Workbooks.Open(CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\test\test.xls")
そして、
End Sub
終りじゃ。
うーん、難しかったかの。
まあ、いろいろと構文を変えて遊んでみることが大事じゃ。
遊び感覚が楽しく上達する秘訣じゃぞ。
このメルマガを読んでいる人はこんなメルマガも読んでいます
- パソコン救急隊・業務日誌
- パソコン救急隊、出張サポート、e−太陽堂 茨城県南、千葉県北をサービスエリアにパソコン出張サポート。 パソコン救急隊などでの出来事を記録するつも...
- PCフリーソフト ― 無料でいこう!
- パソコンは買っただけではただの箱です。この箱にあなた好みのソフトを入れていくことで、 あなたのオリジナルパソコンが出来あがっていきます。 ウ...
- 超ビギ・パソコン教室
- 「超ビギナーのためのパソコン教室」を開いていて、実際に出てくる、疑問、質問、知っておいてほしいことなどを回覧板のように回していきます。 日頃の、質...
- flap software ニュース
- flap softwareのニュースをお届け!
- 失敗&後悔しない中古パソコン購入術!
- 「中古パソコンを用途別に選ぶ方法」や「中古パソコン購入時の注意点」などの情報を中古パソコン購入ナビゲーションに合わせて配信していきます。
![メルマガスタンド[メルマ!]](/img/common/melma_logo.gif)








