よろしくお願いいたします。
環境:Excel2003
以下のようなイメージで別Sub内で宣言された変数を同じ変数名で別のSub内で参照したいです。
Sub hoge()
nn As Integer
nn = 1
End Sub
Sub hogehoge()
MsgBox (nn)
End Sub
Sub hogehogehoge()
Call hoge
Call hogehoge
End Sub
エラーが発生する為、typeについて検索をかけてみました所、以下のような変数参照方法は出てきましたが、別のSubで宣言されている変数を同じ変数名で別のSub内で参照する方法はないでしょうか?
Type PData
hoge As String
hogehoge As Long
End Type
Sub Sample1()
Dim Pppp(5) As PData
End Sub
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
初めのうちはグローバル変数を使う方法でもいいのですが、
慣れてきたらグローバル変数ではなく、
HogeHogeに引数を持たせる方法を使った方がいいでしょう。
なぜ?
それは慣れてくれば分かってきます。
'-----HogeHogeを引数付きでコールする------
Sub Hoge()
Dim nn As Integer
nn = 1
Call HogeHoge( nn )
End Sub
'-----これに引数を持たせる-------
Sub HogeHoge( nn As Integer)
MsgBox nn
End Sub
'------Hogeだけをコールする-----
Sub HogeHogeHoge()
Call Hoge
End Sub
'--------------------------------
以上ここまで。
No.1
- 回答日時:
グローバル変数を使えば可能です。
'モジュールの先頭で変数を宣言する
Private nn As Integer
Sub hoge()
nn = 1
End Sub
Sub hogehoge()
MsgBox (nn)
End Sub
Sub hogehogehoge()
Call hoge
Call hogehoge
End Sub
http://search.goo.ne.jp/web.jsp?dummy=%F3%FE%F3% …
> 'モジュールの先頭で変数を宣言する
> Private nn As Integer
ありがとうございます。
privateも試したのですがエラーが出ていました。
モジュールの先頭で試しましたうまくいきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 標準モジュール Public mOnTime As Date Sub sample() '実行プロシ 1 2023/02/22 15:44
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) マクロについて教えてください。 1 2023/06/06 00:57
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) VBAに関する質問です 2 2022/03/30 22:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
onclick指定関数の引数へローカ...
-
Vb.netのグローバル変数の宣言...
-
複数ファイルで使うグローバル...
-
サブウインドウから親ウインド...
-
「オブジェクトが必要です。」...
-
2次元のJSON形式の配列の展開
-
【Jquery】changeイベント毎にa...
-
VC++のちらつき防止方法
-
System::Drawing::Color::XXXX...
-
Array.prototype.~の使い方に...
-
Excel VBA の ChangeFileAccess
-
『名前空間』の意味を教えてく...
-
【正規表現】【javascript】CR...
-
-(ハイフン)_(アンダーバー)の...
-
linuxで不一致検索
-
Linux バイナリ実行できない "...
-
全部のアクセスを指定したペー...
-
同じIDで定義した要素の配列を...
-
idを使わずにonclickで自身の要...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
【正規表現】【javascript】CR...
-
ASP+アクセスでのSQLコメントに...
-
Linux バイナリ実行できない "...
-
Vb.netのグローバル変数の宣言...
-
ボタンをクリックすると数が増...
-
【Jquery】changeイベント毎にa...
-
正規表現で半角数字1桁のみを全...
-
「オブジェクトが必要です。」...
-
HTTPSのとき":"が"%3A"ではなく...
-
onclick指定関数の引数へローカ...
-
同じ型【ハイフンと数字】だけ...
-
Excel VBA の ChangeFileAccess
-
C# .NET DataGridView の行を追...
-
javascriptで文字挿入でtoggle...
-
ifreamをリロードしたい
-
window.onloadでのfunction
-
static constメンバ変数(配列)...
-
MFCのキャプション変更
-
アンカーリンクをクリックさせ...
おすすめ情報