
No.3ベストアンサー
- 回答日時:
>クラスモジュールについての本は沢山あって何とか理解できつつありますが
そうですかね。
実情とかけ離れているように思いますが、勉強が足らんのかな。
クラス主義のVB.Netと違いますよね。
普通はAccessVBAでもエクセルVBAでも、標準モジュールにコードを書きますが。
クラスモジュールなど高等すぎて。もっとほかにAccessVBAで勉強することが多いのでね。
フォームのコマンドボタンを押したときのコードは、フォームのコントロールをデザインしている画面ででそのコマンドボタンをダブルクリックすると、プロパティほかの項目の、設定場面が出て、そのイベントの「クリック時」の右端の「・・・」をクリクすると
Private Sub コマンド2_Click()
End Sub
が自動的に現れる。
この間にクリックしたときの処理のコードを直接書くのだが、他のコントロールからも利用したいときや
そっくり標準モジュールに書きたいとき、(ユーザー)関数は、標準モジュールのModule1などに
Sub test08()
MsgBox "sss"
End Sub
と書いて
Private Sub コマンド2_Click()
module1.test03()
End Sub
と書くとボタン2をクリックしたとき「sss」のメッセージボックスが表示される(された).
他のModuleにもTest03はあるので、module1.test03()と限定しただけ。
No.4
- 回答日時:
クラスモジュールを使う場合は、コントロールのそのものに、インスタンスを割り当てますが、複数のコントロールのイベントに同様に割り当てることが可能になります。
つまり、割り当ては一回で済みます。標準モジュールを使うということは、複数のフォームなどで共通の関数プロシージャ等を使うということです。ただ、コントロールのイベント・プロシージャは、一対一の対応で書かなくてはなりません。標準モジュールは、各々に呼び出しを書かなくてはいけません。しかし、クラスモジュールのようにインスタンスの生成という考え方が必要ありませんから、分かりやすいです。
通常は、以下のように、関数プロシージャを呼び出します。
'//コマンドボタンのプロパティのイベントに設定します。
Private Sub cmdButton_Click()
Call MyFunc
End Function
'//標準モジュール
Public Function MatchUp(CityName As String)
MsgBox Date
End Function
No.2
- 回答日時:
標準モジュールの解説はWEB上にたくさんあります。
以下はその一部です。
http://office.microsoft.com/ja-jp/access-help/HA …
http://office.microsoft.com/ja-jp/access-help/HP …
http://www.accessclub.jp/bbs3/0260/superbeg81190 …
お礼が遅れましてすみませんでした。私の初歩的な質問に対し、ご回答下さいまして有り難うございます。教えて下さいました解説を参考にし、もっと勉強します。有り難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
モジュールからフォームのボタンをクリックするには?
Access(アクセス)
-
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
-
4
ACCESS マクロをモジュールに変換した後の実行
Access(アクセス)
-
5
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
6
IIF関数の使い方
Visual Basic(VBA)
-
7
Access-VBAでExcelファイルを作成する。
Excel(エクセル)
-
8
アクセスVBAのMe!と[ ]
Access(アクセス)
-
9
「#エラー」の回避
Access(アクセス)
-
10
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
11
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
12
アクセス 壊れた? 「ファイルが見つかりません」
Access(アクセス)
-
13
access マクロでのフィルタの解除の方法
Access(アクセス)
-
14
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
15
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
16
Accessでフォームから別フォームのテキストボックスの値を設定する
Visual Basic(VBA)
-
17
Accessのクエリの結果を、既存のエクセルに追加したい
Access(アクセス)
-
18
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
19
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
20
起動時のフォームの大きさ?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザー定義関数に#NAME?が返...
-
エクセルVBAでシートモジュール...
-
Sub Workbook_Open()でユーザー...
-
SendKeysの使い方について
-
大量の標準モジュールを解放す...
-
標準モジュールを削除したい。(...
-
Excel VBAで、ユーザーフォーム...
-
VBAで旧字体を異字体に一括で変...
-
Access VBA標準モジュールにつ...
-
モジュールとクラスの違いって...
-
モジュールの最大数はいくつな...
-
VBA モジュールで共通に使う変...
-
Excel VBA 定義されたプロージ...
-
ExcelVBA:パブリック オブジェ...
-
【Excel VBA】標準モジュールに...
-
モジュールとは何ですか
-
vba userFormのSubを標準モジュ...
-
フォーム内のテキストボックス...
-
vba 標準モジュールインポート...
-
VBAで「メモリが不足しています」
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでリンク切れをチェッ...
-
エクセルVBAでシートモジュール...
-
VBでグローバル変数を宣言するには
-
ユーザー定義関数に#NAME?が返...
-
Excel VBAで、ユーザーフォーム...
-
Excel VBA 定義されたプロージ...
-
vba userFormのSubを標準モジュ...
-
標準モジュールを削除したい。(...
-
'Range'メソッドは失敗しました
-
VBAで別モジュールへの変数の受...
-
モジュールからフォームのボタ...
-
モジュールの最大数はいくつな...
-
グラフのX,Y座標を取得したい
-
モジュールとクラスの違いって...
-
【vba】フォームに書いてあ...
-
Form間の値の渡し方
-
VBのフォームモジュールと標準...
-
VBA モジュールで共通に使う変...
-
Excel VBA 『Call』で呼び出す...
-
acwzlibとは?
おすすめ情報