• ベストアンサー

vbscriptの変数宣言

教えてください。 プログラム初心者です。 vbscriptで変数をDimで宣言しているものと。Dim無しの変数宣言していないく、 いきなり代入して使っているものもあります。宣言して使うものと使わないものの違いは何でしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

vbscriptの場合は同じ動作です。 ただ、変数の宣言がないとソースコードが読みにくくなりますので通常は省略しません。 ソースコードの先頭などに「Option Explicit」を記述することで、 宣言が省略された変数をエラーとして扱うこともでき、 品質の保証が必要な開発の場合は、この指定がある事が多いです。

その他の回答 (1)

  • x-1919
  • ベストアンサー率52% (91/173)
回答No.2

VBScript は変数を宣言しなくとも良い言語であるが、明示的に宣言することもできます。 ただし明示的に宣言するのであれば先頭に Option Explicit キーワードを付けることをお勧めします。 Option Explicit は変数の宣言を強制するオプションです。 強制することによって変数名の綴りミスを防ぐことができるようになります。

関連するQ&A

  • VBScriptの変数宣言

    ASPでvbscriptを使って処理をしているページの修正を行っていたのですが、その中で不思議な状態が発生しています。 <% Option Explicit On Error Resume Next %> ===== 省略 ===== <% filename = Trim(bobj.Form(bin,"filename")) Dim filename ===== 省略 ===== 普通、上記のような記述ではfilenameの代入のところでエラーが発生すると思うのですが、代入処理の直後にerr.numberを判定しても、エラーが発生していないんです。 includeしてあるファイルの内部も検索しましたが、filenameの変数宣言は見つかりませんでした。 VBScriptって、どこで変数宣言を行っても有効になるのでしょうか? 正常に動いているので、今のところ問題は無いのですが、何か気持ち悪くて。。。 似たような現象が起こった事のある方や、これが正しい動きだというご指摘をお願いいたします。

  • VBScript 配列の宣言に変数を使用

    VBScript初心者です。 配列を宣言する際に変数を使用することは出来ないでしょうか。 例えば下記のようにするとエラーになります。 Dim intCnt intCnt = 9 Dim strArray(intCnt) どなたかご存知の方がいらっしゃいましたらお教え下さい。 よろしくお願い致します。

  • Vbscriptで変数の宣言の仕方・・・こんなのできないのですか?

    Const AAA = 3 Dim gnHensuu(AAA) というような配列変数を使いたいのですが、 実行するとコンパイルエラー 整数型の定数がありませんと なってしまいます。 できないのでしょうか? VBscript Windows2000

  • 変数の宣言について

    VBですけれども 変数の宣言なしに For i  ・  ・   ・ Next i などを記述しますと「変数の宣言がされていません」 というメッセージがでるのですが、テキストなどでは 変数の宣言などしていなくとも動作しますこれはどうして どういうことなのかご存知の方教えてください。 Dimとかの宣言もなしにです。 著書は 独習Visual Basic 6.0 などです。

  • 変数の宣言について

    変数の宣言のことなんですけど,何個ぐらい宣言できるのでしょうか?相当な数を宣言するとメモリ不足になってしまうそうで・・・。これから作ろうとしているプログラムは変数を相当数(それこそ万単位)なもので。ご回答の方,よろしくお願いします。

  • VBScriptでカレントディレクトリの表示

    VBscriptで自分が今いるカレントディレクトリを変数に代入するにはどうすればいいでしょうか。 VBScriptはG:\にあり(USB上)、そこから起動しています。 Dim driveNameと定義して、driveNameにG:\を代入したいんです。 あとで、msgboxでそれを表示するつもりです。

  • コマンドプロンプトの出力をVBScript内の変数に代入する

    VBScriptからコマンドプロンプトのver | findstr 5.1を実行し、その出力結果をVBScript内の変数に代入したいのですが、どうすればいいでしょうか? Dim WShell Dim result Set WShell = WScript.CreateObject("WScript.Shell") WShell.Run "cmd /c (ver | findstr XP > " & result & ")" MsgBox result とやってもresultには何も入っていませんでした。

  • 「変数の宣言」と「変数の定義」は同じ意味ですか?

    Dim myStr As String は、変数の宣言と定義、どちらになるのでしょうか? どちらともいいますか?

  • VB6の変数宣言について

    VB6で変数を宣言するときにいちいち新しいプロシージャのたびに新しく宣言しなおすのがすごく不便です。 Dim A As Integer A = 12345 と毎回宣言すると見た目も悪いですしいろいろと不便です。 どのプロシージャにも A と書けば必ず 12345 を呼び出してくれるようにはできないのでしょうか?

  • VBでの変数宣言は1行に2つできないのですか?

    Visual BASICで変数宣言は1行に2つ以上記述しても実際、動作します。 例 DIM A、B as Integer このように宣言すると、AもBも整数となります。 しかし、このように宣言して、この変数を Call サブプログラム名(B) のように、パラメ-タとして引き渡そうとするとエラーとなってしまうようです。 よくわからないまま、 DIM A as Integer DIM B as Integer と分けて記述したらエラーがきえたようです。 変数宣言は1行に2つ以上まとめて記述してはいけないのでしょうか? VBは Ver 5 です。