
VB6でループさせて配列に値を入れて、計算させて最終的に求めたい値をRとします。そのときループで繰り返すためか同じ配列に値を入れてどんどん値がでかくなりRの値がおかしくなってしまいます;
おそらく問題は一回前に入れた配列がそのままのこってしまってるからなのだと思うのですが;
配列の中の値をクリアする方法はないものでしょうか?
一応、配列=0として初期化しようとしても値は変わらず前のが残ったままになってしまっています;
どなたかわかる方いらっしゃいましたらご回答宜しくお願いします
その他何かいい方法があればそれも教えていただけたらと思います
No.2ベストアンサー
- 回答日時:
Eraceステートメントを使用
Dim a() as Long
Dim s(100) as String
Dim x() as Long
Erase a ’要素が0になる
Erase s ’要素が""になる
Redim x(100) as Long
Erase x ’メモリを解放
注)VB2005の場合は動作が異なるので注意して下さい。
さっそくのお返事ありがとうございます<(_ _)>
なるほどEraseを使えばいいんですね
2005とは動作が異なるという貴重なアドバイス
本当にありがとうございます
don_goさんのアドバイスを参考に再度挑戦してみたいと思います
お忙しい中回答ありがとうございます<(_ _)>
No.1
- 回答日時:
sub main()
call tekito(Rの配列の大きさ,,,)
IF (サイド計算する場合) then
call tekito(Rの配列の大きさ,,,)
end if
end
sub tekito(Rの配列の大きさ,,,)
dim R()
redim R(Rの配列の大きさ)
call 配列Rの中身の設定(R())
call 配列Rの中身の計算
IF (初期化が必要な場合) then
redim R(Rの配列の大きさ)
call 配列Rの中身の設定(R())
call 配列Rの中身の計算
end if
end sub
ローカル変数として設定して、初期化し、実行して、サブルーチン終了でローカル変数を破棄する破棄する
方法と
redim を使う方法
があります。dim resum(でしたか)は配列宣言が定数である必要があるので、汎用を考えると使えません。
お返事ありがとうございます<(_ _)>
なるほどローカル変数としてあとはコール文をうまく使っていく方法がだぶらなくて安全そうですね
注意事項まで書いていただきありがとうございます
これを参考に頑張ってみたいと思います
お忙しい中ご回答いただきましてありがとうございます<(_ _)>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
配列を関数に渡す方法
Visual Basic(VBA)
-
Redim とEraseの違いは?
Access(アクセス)
-
VB6とVB.NETでNullの扱いが違う?
Visual Basic(VBA)
-
-
4
VB6でユーザー定義型がNothingかどうか調べるには?
Visual Basic(VBA)
-
5
フォームを開く時のイベント処理
Visual Basic(VBA)
-
6
定数配列の書き方
Visual Basic(VBA)
-
7
VB6.0 ファイルの一括読込み
Visual Basic(VBA)
-
8
VB6 開発環境のエディタに行番号を表示
Visual Basic(VBA)
-
9
Visual Basic 6.0 コンボボックスのChangeイベントが発生しません
Visual Basic(VBA)
-
10
VB6でやると構造体の配列になる変数をVB2008では何で作ればいいか
Visual Basic(VBA)
-
11
VB6で、一次元配列と二次元配列の相互コピー
Visual Basic(VBA)
-
12
VB6でLabelの最前面にText Boxを書く
Visual Basic(VBA)
-
13
VB6コントロール配列をパラメータとして渡す方法
Visual Basic(VBA)
-
14
コメントのショートカットキー
Visual Basic(VBA)
-
15
VB6で配列を文字列に変換する方法?
Visual Basic(VBA)
-
16
VB6-オブジェクトを配列にセット
Visual Basic(VBA)
-
17
SPREAD(GrapeCity)のセルにフォーカスを設定するにはどうしたらいいのでしょうか?
Visual Basic(VBA)
-
18
【VB6.0】 あるフォームから他のフォームへ値を受け渡したい
Visual Basic(VBA)
-
19
VB6.0のメモリリークについて
Visual Basic(VBA)
-
20
VB6 String型変数の文字数制限
IT・エンジニアリング
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列数式の解除
-
2つ以上の変数を比較して最大数...
-
2次元動的配列の第一引数のみを...
-
VBA Match関数の限界
-
[Excel2000_VBA] 型が一致しま...
-
VB6 配列を初期化したい
-
ビンゴ
-
VBのFunctionで、配列を引数...
-
VBA 1次元配列を2次元に追加する
-
特定のセル範囲で4文字以上入力...
-
エクセルで特定の列が0表示の場...
-
教えて下さい
-
UserForm1.Showでエラーになり...
-
メッセージボックスのOKボタ...
-
TERA TERMを隠す方法
-
特定のPCだけ動作しないVBAマク...
-
String""から型'Double'への変...
-
ExcelのVBA。public変数の値が...
-
一つのTeratermのマクロで複数...
-
文字列内で括弧を使うには
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列数式の解除
-
2つ以上の変数を比較して最大数...
-
特定のセル範囲で4文字以上入力...
-
VBA 1次元配列を2次元に追加する
-
subの配列引数をoptionalで使う...
-
配列変数の添字が範囲外ですと...
-
2次元動的配列の第一引数のみを...
-
ListViewで、非表示列って作れ...
-
MATLABにて場合分け関数を定義...
-
VB6 配列を初期化したい
-
AES暗号にて、AES_set_encrypt_...
-
配列を任意の数値で埋める方法
-
RPG E仕様書について
-
VBのFunctionで、配列を引数...
-
ビンゴ
-
エクセルで最小値から0を除く方法
-
順列の作成
-
VBA Match関数の限界
-
VLOOKUP関数で、一番下...
-
for each の現在の配列ポインタ...
おすすめ情報