戻る

Visual Basic Script

目次


関数一覧

記述説明
'コメント一行コメント
Rem コメント一行コメント
文末 _構文の途中で改行する
"string" & "string"文字列結合
vbCrキャリッジリターン
vbCrLfキャリッジリターン&ラインフィード
vbLfラインフィード
vbTabタブ文字
Const 定数名 = 値定数を宣言する
&H(16進数)16進数を10進数に変換する
&O(8進数)8進数を10進数に変換する
On Error Resume Nextエラー処理を有効化
On Error GoTo 0エラー処理を無効化
  • target
  • 記述引数戻り値説明
    Msgbox
    • message
    • button(vbOKCancel)
    • title
    int:ボタン[OK:1/cancel:2]
    InputBox
    • message
    • title
    • default
    string inputString入力した文字列を返す。キャンセルやEcs時は空白文字列を返す。
    ChrInteger:文字番号char指定番号の文字を返す(S-JIS)
    AscCharInteger:文字コード文字を文字コードに変換する(S-JIS)
    ChrWInteger:文字コードChar文字コードの文字を返す(UTF-16)
    AscWCharInteger:文字コード文字を文字コードに変換する(UTF-16)
    WScript系
    WScript.Echo
    • message
    指定した文字列をウィンドウで表示する。(実行時に「cscript sample.vbs」のようにするとプロンプトに表示。)
    WScript.Sleep
    • time
    秒数をミリ秒で指定して、その時間を待機する。
    WScript.Quit
    • endcode
    指定した終了コードでプログラムを終了する
    TypeNameanythingdatatype値のデータ型を返す
    CIntnumberInteger入力された数をint型に変換
    CLngnumberLong入力された数をlong型に変換
    CStr()Integer入力された数値を文字列型に変換する。Nullを指定するとエラーとなる。
    IsNumerictrue:-1/false:0引数リテラルが数値確認する。数値の場合-1、そのほかは0を返す。(小数、カンマ区切り、全角も数値と認識する)
    IsNulltrue:-1/false:0引数リテラルがNullか確認する。Nullの場合は-1、そのほかは0を返す。
    IsArraytrue:-1/false:0引数オブジェクトが配列か確認する。配列の場合は-1、そのほかは0を返す。(動的配列、静的配列は認識する。文字列は認識しない)
    IsDatetrue:-1/false:0引数リテラルが日付に変更できるか確認する。日付の場合は-1、そのほかは0を返す(スラッシュ区切り、ハイフン区切り、時刻付き、時刻のみは認識する)
    InStr
    • StartIndex
    • Str
    • SearchWord
    • Mode
    Index文字列から検索文字列の文字を検索しその位置をintegerで返す。見つからない場合は0を返す。
    vbBinaryCompare0大文字小文字を区別する(バイナリモード)
    vbTextCompare1大文字小文字を区別しない(テキストモード)
    InstrRev
    • StartIndex
    • Str
    • SearchWord
    • Mode
    Index文字列から検索文字列を右から数えて検索しその位置をintegerで返す。見つからない場合は0を返す。
    vbBinaryCompare0大文字小文字を区別する(バイナリモード)
    vbTextCompare1大文字小文字を区別しない(テキストモード)
    IsNullTargetbool対象の値がNullの場合にTrueを返す。
    Int
    • Number
    Integer小数点以下を切り捨てる。小数の大きさに限らず低い整数となる
    Fix
    • Number
    Integer小数点以下を切り捨てる。マイナスの小数の場合に大きい整数に合わせる
    Round
    • Number
    • 桁数
    小数部分を四捨五入した数を返す。
    Hex
    • Number
    Hexadecimal10進数を16進数に変換する
    Oct
    • Number
    Octal10進数を8進数に変換する
    Abs
    • Number
    指定された数値の絶対値を返す
    Rnd
    0以上1未満の乱数を生成する
    Mid
    • String
    • startIndex
    • 文字数
    String開始位置から後ろのすべての文字列を返す。文字数を指定した場合はそこからの文字数分を返す。開始位置の戦闘は1
    Replace
    • String
    • SearchWord
    • AfterWord
    • startIndex
    • count
    • Mode
    文字列の一部を置換する。countには-1以上の値を指定、省略ですべての候補が置換される。
    vbBinaryCompare0大文字小文字を区別する(バイナリモード)
    vbTextCompare1大文字小文字を区別しない(テキストモード)
    Split
    • String
    • separate
    • ArrayLength
    • Mode
    Arrayseparateで指定した文字で分割した配列を返す
    vbBinaryCompare0大文字小文字を区別する(バイナリモード)
    vbTextCompare1大文字小文字を区別しない(テキストモード)
    StrComp
    • String1
    • String2
    • Mode
    Integer文字列を比較する。整数型と文字列型は同じとみなされる。
    戻り値
    0String1とString2が同じ
    1String1の方がString2より大きい
    -1String1の方がString2よりも小さい

    vbBinaryCompare0大文字小文字を区別する(バイナリモード)
    vbTextCompare1大文字小文字を区別しない(テキストモード)
    LCase
    • String
    String小文字に変換
    UCasse
    • String
    String大文字に変換
    UBound配列Integer配列のインデックス値の最大値を返す。
    日付・時刻
    Date()String今日の日付を取得
    Now()現在の日付と時刻を取得
    Year()Date引数のDateから年を取得
    Month()Date引数のDateから月を取得
    Day()Date引数のDateから日付けを取得
    Time()現在の時刻を取得(h:mm:ss形式)
    Hour()Time引数のTimeから何時かを取得
    Minute()Time引数のTimeから何分かを取得
    Second()Time引数のTimeから何秒かを取得
    FormatDateTimeI()
    • Time
    • Int
    TimeをIntで指定したフォーマットで表示(4=hh:mm)
    Weekday()Date1-7(日曜日=1)引数の日付から曜日のIntegerを返す。
    WeekdayName(曜日,曜日の表示)第一引数の曜日のIntegerを(a曜日)のフォーマットで返す。第二引数をTrueにすることで曜日表示を消すことができる。
    DateAdd(計算間隔,計算数値,日時) 計算間隔
    年yyyy
    月m
    日d
    週ww
    時h
    分n
    秒s

    計算数値:計算間隔で選択した設定値から±の整数値で記載
    日時:DateやNowで指定できるフォーマットが示す時間
    DateDiff(単位,日時1,日時2)
    年yyyy
    月m
    日d
    時h
    分n
    秒s
    日時1ー日時2の値を指定した単位で
    正規表現
    [RegExpObject
  • ].Execute
    MatchesCollection正規表現による検索(抽出)を行う。MatchCollectionはSetキーワードで変数へ格納できる(最長一致:「.*」「.+」、最短一致:「.*?」「.+?」、?をつけると最短一となる)
    [RegExpObject].Patternpropaty=PatternRegExpオブジェクトにパターンを設定する
    Set 変数名 = New RegExpRegExpオブジェクトを作成する
    [RegExpObject].Globalpropaty=bool全体を検索するかどうかをbool値で示す。Trueで全体を検索。falseで最初に一致した文字列だけ
    [RegExpObject].IgnoreCasepropaty=bool大文字小文字を区別しないをbool値で示す。Trueで区別なし
    [RegExpObject].Text
    • target
    bool正規表現に一致する文字列があるかどうかをbool値で返す
    [RegExpObject].Replace
    • targetString
    • ReplaceString
    String正規表現で一致した箇所を置換文字列で置換した文字列を返す
    [MatchObject].CountpropatyMatchCountコレクションの要素数を返す。(マッチで一致した個数を返す)
    ファイル・フォルダ操作
    Set obj = CreateObject("Scripting.FileSystemObject")ファイルシス.CreateTextFile()テムオブジェクトを生成する。
    [SystemFileObject].FileExists()String:Filenamebooleanファイルが存在するかどうかブール値で返す。カレントディレクトリのファイルは相対パスが利用可能。
    [SystemFileObject].CopyFile copyfile targetpath
    • copyfile
    • targetpath
    指定したファイルを指定したパスへコピーする。コピーファイルをワイルドカードで指定すると一括コピー可能
    [SystemFileObject].DeleteFile filenameString:ファイル名指定したファイルを削除する。
    [SystemFileObject].MoveFile movefile path
    • movefile:移動するファイル
    • path:移動先パス
    指定ファイルを指定先パスへ移動する。(pathは最後に\が必要)
    [SystemFileObject].CreateTextFile(FullFilePath,)
    • String:ファイル名
    • bool:上書きする
    • bool:True(UTF-16)/False(Shift-JIS)
    ファイルを作成する
    [SystemFileObject].GetFileName(path)string:ファイルパスパスからファイル名を取得する。
    Set obj = [SystemFileObject].GetFolder(path)String:フォルダパスフォルダオブジェクトを作成する
    [FolderObject].Filesフォルダ内のすべてのファイルをコレクションで取得する
    [FolderObject].Files.Countフォルダオブジェクトのファイルの数を返す
    [FolderObject].GetExtensionName(path)String:ファイル名指定したファイルの拡張子を返す。
    Set obj = [SystemFileObject].GetFile(filename)String:Filename引数で指定したファイルをファイルオブジェクトとして定義する。
    [FileObject].Copy pathpath:コピー先のパス指定したパスに(FileObjectの)ファイルをコピーする
    [FileObject].Deleteオブジェクトのファイルを削除する
    [FileObject].Nameファイル名を返す
    [SystemFileObject].GetAbsolutePathName(path)String:pathString指定したパスの絶対パスを取得する。カレントディレクトリは["."]で指定する。親ディレクトリは[".."]で指定する。
    [SustemFileObject].FolderExists(path)String:pathboolpathで指定したフォルダが存在するかをboolで返す。
    [SystemFileObject].CopyFolder copyfolder targetpath
    • String:copyfolder
    • String:targetpath
    copyfolderで指定したフォルダをtargetpathへコピーする。ワイルドカードで一括コピー可能。
    [SystemFileObject].DeleteFolder pathString:pathpathで指定したフォルダを削除する。ワイルドカードが使える。
    [SystemFileObject].MoveFolder movefolder targetpath
    • String:movefolder
    • String:targetpath
    movefolderで指定したフォルダをtargetpathで指定したフォルダへ移動する。ワイルドカードが使える[targetpathには末尾\]
    [SystemFileObject].CreateFolder(foldername)String指定した名前のフォルダを作成する。
    [SystemFileObject].GetFileName(path)Stringpathで指定したフォルダの名前を取得する
    Set obj = [SystemFileObject].GetFolder(path)Stringpathで指定したフォルダのフォルダオブジェクトを生成する。
    [FolderObject].Name = Nameフォルダ名をNameで指定した名前に変更する。
    Set obj = WScript.CreateObject("Shell.Application")シェルオブジェクトを作成する。
    [Shell.ApplicationObject].Explore pathStringpathで指定したフォルダをエクスプローラーで開く。
    バージョン確認関数
    ScriptEngineVBScript,JScript,VBAのいずれかの値
    ScriptEngineMajorVersion
    ScriptEngineMinorVersion
    ScriptEngineBuildVersion

    トップへ戻る

    変数

    規則

    データ型

    TypeName関数でデータ型を調べることが出来る

    戻り値内容
    String文字列
    Integer整数(-32,767~32,767)
    Long長整数(-2,147,483,648~2,147,483,647)
    Single単精度浮動小数点数
    Double倍制度浮動小数点数
    Byteバイト
    Currency通貨
    Booleanブール値
    Date日付・時刻
    Empty初期化されていない
    NullNull
    Objectオブジェクト
    Nothingオブジェクトを参照していない
    Errorエラー
    Unknown不明

    トップへ戻る

    演算子

    演算子意味
    論理演算子
    And
    RLResult
    TTT
    TFF
    FTF
    FFF
    NotNot True = False,Not False = True
    Or
    RLResult
    TTT
    TFT
    FTT
    FFF
    Xor
    RLResult
    TTF
    TFT
    FTT
    FFF
    Eqv
    RLResult
    TTT
    TFF
    FTF
    FFT
    Imp
    RLResult
    TTT
    TFF
    FTT
    FFT
    算術演算子
    +加算(文字列結合)
    &餅列結合。値が文字列でない場合は文字列型に変換される。
    -減算
    -単項マイナス符号
    *乗算
    ^指数演算(べき乗)
    /除算(結果は浮動小数点)
    \整数除算
    Mod剰余
    比較演算子
    =左辺と右辺が等しい場合はTrue
    <>左辺と右辺が等しくない場合はTrue
    <左辺が右辺より小さい場合はTrue
    <=左辺が右辺以下の場合はTrue
    >左辺が右辺より大きい場合はTrue
    >=左辺が右辺以上の場合はTrue
    Is2つのオブジェクト変数を比較し、同じ場合はTrue

    演算子の優先順位

    1. ^
    2. -(マイナス符号)
    3. *, /
    4. \
    5. Mod
    6. +(加算), -(減算)
    7. &
    8. =, <>, <, <=, >, >=, Is
    9. Not
    10. And
    11. Or
    12. Xor
    13. Eqv
    14. Imp

    トップへ戻る

    制御構文

    Exitステートメント


    トップへ戻る


    トップへ戻る


    トップへ戻る