• ベストアンサー

【緊急】インクルードファイルに配列変数を使用することができない???

ASPでVBSCRIPTを使っています。 多くのASPで使う部分を共通化して インクルードファイル(.inc)にして それを読み込んでいるのですが、 インクルードファイルに Dim gsAAA と宣言すると、 普通に使えるのに Dim gsAAA(9) とすると使えません。 配列の変数はインクルードにおくことが できず、かならずローカルのASPで 宣言してやらないとダメなのでしょうか? どのASPでも同じ宣言が必要になってきたので。 どなたか、少しでも分かることがあれば 教えて下さい。お願いします。

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

  • ベストアンサー
  • LemonT
  • ベストアンサー率49% (39/79)
回答No.3

こんにちは。 ただ単に参照時に「gsAAA」になっているだけのように思えますが。。。 つまり、gsAAAの後ろに(0)とか(1)が抜けている?

GBSGBS
質問者

お礼

回答ありがとうございます。 (0)とかはちゃんと書いてあります。 宣言がIncludeファイルの中になければ 普通に動くのです・・・。 Includeファイルは読み込まれていることを 確認しました。

その他の回答 (2)

  • Khazad
  • ベストアンサー率30% (17/56)
回答No.2

>Dim gsAAA(9) とすると使えません。 どう使えないのかがわからないと回答のしようが…。 エラーメッセージが表示されるのか、(表示されるとしたらどんなメッセージか) それとも表面上動いているがロジックが動いていないのか。 あと、その宣言部分のみのテスト用のASPを作って動作を確認するとか…。 とりあえず。変数の宣言がインクルードファイルとASPでダブっているということはないですよね。 (質問分を読む限りはなさそうですが)

GBSGBS
質問者

補足

説明不足ですみませんっ! 変数宣言はダブってはいません。 エラー タイプ Microsoft VBScript 実行時エラー (0x800A000D) 型が一致しません。: 'gsAAA' とエラーメッセージが出ます。配列変数の 宣言部分だけをインクルードファイルにしてみた結果です。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

ASPのインクルードは、実際のところは、IISのサーバサイドインクルードですから、ASPの解釈前に実行されます。 故に、配列変数の宣言を書くこと自体は、とくに問題ありません。