検索
連載

第4回 関数を使いこなす(その1) 文字列、数値、日付を扱う関数基礎解説 演習方式で身につけるチェック式WSH超入門(1/4 ページ)

VBScriptの関数を単体で使用したり、組み合わせたりすることで、複雑な処理が可能だ。今回は文字列、数値、日付関数の使い方を解説。

Share
Tweet
LINE
Hatena
基礎解説 演習方式で身につけるチェック式WSH超入門
Windows Server Insider


「基礎解説 演習方式で身につけるチェック式WSH超入門」のインデックス

連載目次

 今回から2回にわたり、第2回で取り上げたMsgBox関数、InputBox関数以外の関数を取り上げ、さらに一歩踏み込んで、VBScriptをより高度に使いこなす方法について説明する。

関数を制するものはスクリプトを制す

 第2回でも説明したとおり、関数とは、引数を受け取って、何らかの処理を行い、結果を戻り値として返す装置である。第2回ではMsgBox関数とInputBox関数のみ取り上げたが、実際はVBScriptにはおよそ100個の関数があらかじめ用意されている。これらの関数を単体で使用したり、組み合わせたりすることで、複雑な処理が可能となる。 100個もあるというと、覚えるのも大変そうだと感じてしまうかもしれないが、いくつかのタイプに分類できるので、パターンをつかめば習得するのはそれほど困難ではない。ただしVBScriptのヘルプには厳密な分類がされていない。そこで、VBScriptの関数の全体像を把握しやすいように、筆者なりの分類をしてみた。それが次の表だ。ただしこの表は、入門者が関数群の概要を理解するためのもので、VBScriptのすべての関数を含んでいるわけではない。例えば、バイナリ・データを扱うLeftBなど、通常はあまり使わないような関数は含めていない。

VBScriptの関数一覧
1. 文字列処理関数
文字列を扱う関数。文字列を加工したり切り出したりして、新たな文字列を取得するものが多い
InputBox、MsgBox
Left、Right、LTrim、RTrim、Trim、LCase、UCase、Mid、Replace、StrReverse、String、Space
Len、InStr、InStrRev、StrComp
Asc、Chr
FormatCurrency、FormatDateTime、FormatNumber、FormatPercent
2. 数値演算関数
数値を扱う関数。数学に出てくる「関数」と共通のものもある
Sin、Cos、Tan、Atn、Sqr、Exp、Log
Int、Fix、Sgn、Abs、Round
Rnd
Hex、Oct
3. 日付処理関数
日付を扱う関数。現在日時を取得したり、日付の間隔を求めたりするものが中心
Now、Date、Time
Year、Month、Day、Hour、Minute、Second、DatePart
MonthName、Weekday、WeekdayName、DateAdd、DateDiff
DateSerial、TimeSerial、DateValue、TimeValue、Timer
4. データ型処理関数
データ型(後述)を調べたり、ほかの型に変換可能かどうかを調べたり、実際に変換を行ったりするもの
TypeName、VarType
IsArray IsDate、IsNumeric、IsObject、IsEmpty、IsNull
CBool、CByte、CCur、CDate、CDbl、CInt、CLng、CSng、CStr
5. 配列処理関数
配列(後述)を取り扱う関数
Array、Filter、Join、Split
LBound、UBound
6. そのほかの関数
1〜5に分類されないそのほかの関数。オブジェクトを扱うもの、ロケールを扱うもの、スクリプト・エンジンの情報を扱うものに大別できる
CreateObject、GetObject、GetRef、LoadPicture、GetLocale、SetLocale
ScriptEngine、ScriptEngineBuildVersion、ScriptEngineMajorVersion、ScriptEngineMinorVersion
RGB、Eval

 いかがだろうか。VBScriptのキーワードや関数名は英語が基になっているものが多いということはこれまでに述べたが、特に関数は英単語そのものが関数名になっているケースが多いことがお分かりいただけると思う。そのため、関数名から何をする関数なのかということが推測しやすくなっている。とはいえ、これを見ただけでいきなり関数を使いこなすのは無理だろう。

 そこで以下では、これから各タイプの関数ごとに、よく使うものを中心に、サンプル・コードを交えながら詳しく解説していきたい。なお記事の都合上、すべての関数、すべての引数について説明しているわけではない。必要なら、各自ヘルプを参照し、情報を補足しながら読み進んでいただきたい。


Copyright© Digital Advantage Corp. All Rights Reserved.

       | 次のページへ
ページトップに戻る