VBAネタをやる候補
はい。はようございます。僕です。本日は某ふりがなシリーズの没ネタ供養投稿をしていきとうございます。Python、Ruby、PHP、JavaScript、UnityまでやってVBAやらないのはあれなんで今日はその "準備の表明見通し(?)" を……。
まあいいや。ということでVBScriptネタやります。VBAとはできることが若干異なるので、オフィスソフトいじる命令は呼べませんが基本文法は大体同じなんでVBScriptいじるとかやっていきたいと思います。某ふりがなシリーズの最初の方のネタはデバッグログいじるやつですし……。
というわけで某書籍の方のネタはこんな感じになります。Chapter 1 Excel VBA最初の一歩
Chapter 2 条件によって分かれる文を学ぼう
Chapter 3 繰り返し文を学ぼう
Chapter 4 Excelのシートやセルを操作しよう
Chapter 5 オブジェクトを調べてVBAを使いこなそう
Chapter 1-3まではなんとかなりそう。んで、なんでVBScriptを没ネタにしたかと言いますと人にオススメしづらいからってのがあります。
VBScript自体は以下用途で扱われていて色々便利なんですが、マイクロソフトは既にサポートしてないし、動作環境そのものも終了しかねないなってのが個人的な印象なんですよね*1。ただサクッと事務作業の効率化スクリプト作る分には扱いやすい言語なんで僕としてはなんとももにょるところ。
VBScript は Visual Basic の構文を真似てつくられた、Windows のスクリプト言語であり、Active Scripting のスクリプトエンジンという形態で実装されている。ランタイムとしてASPやWSHがあり、主な用途として、
- Active Server Pages(ASP)などを使用したサーバサイドスクリプティング処理
- Windows Script Host(WSH) を利用したWindows上でのネイティブ・スクリプト
- Internet Explorer を使用したクライアントサイドスクリプティング処理
- HTML Applications(HTA)アプリケーション
が挙げられる。
Wikiより
まあ現段階のWindows10では動きますんでこのネタで進めます。ということで書籍の文法確認をしていきます。ログをみるやつはメッセージボックスでデバッグやっていこうと思いますので、Debug.Print
なんかはMsgBox
とか使っていきます。
hello.vbs
MsgBox "Hello"
こんな感じのvbsファイル作って実行(ファイルをクリック)すれば以下のようなものが表示されます。
こんな感じで。
ということでChapter 3まで見ていくとこんな感じの内容のものができます。
github.com
Chapter 4以降はVBAの問題なんでどうしようかね……。なお、今回は没ネタなんでなにやるかは見てません。
ちなみに、VBScriptの組込関数とかの確認は以下サイトが便利でした。
VBScript Functions
<% %>
はサーバー側で記述しますよのおまじないなのでお試しでコードを書きたい場合はコードの部分だけ見ればおけです。同様にブラウザ側でいじる場合は<script type="text/vbscript"></script>
とかやればおけです*2。といった感じに使えます。
おわり
余談
GASのスプレッドシートで同様のネタやるってのもあったんだけど、あれほぼJavaScriptなんでセル操作ネタをやるにしてもネタとして……、うーん………。VBAでネタになりそうなももう少し模索していきます。
つづくかもしれない