見出し画像

【ACCESS VBA】クラスモジュールの書き方のコツ

YouTueでも解説しています。是非、ご覧ください。

 

クラスモジュールを利用して、システムを作成していると、とても、楽しくなってきます。

イベントの処理が、一括で、出来るからです。

そのコツを、少しだけ紹介します。

クラスモジュールの書き方のコツ

この記事の続編です。

こんにちは。伊川(@naonaoke)です。

 

以前に、個人情報漏洩、誤登録防止のため、コピペしかさせないとう記事を書きました。

 

その直後に、同じコードは、2度書くなという記事も書きました。

 

矛盾だらけのブログになっています。

 

ACCESSのフォームでは、イベントを発生させることが多いですね。

 

しかも、大抵、発生させるインベントは、共通事項が多いですね。

 

例えば、個人情報で、貼り付けしかさせないと言えば、

 

名字

名前

電話番号

携帯番号

性別

郵便番号

住所

マンション名

 

この8項目くらいですか。

 

では、この8項目のテキストボックスに、すべて、コードを書き込むのかという話になります。

 

以前紹介したコードは、3行なので、24行のコードになります。

 

 

良いコードは、8行以上15行未満です。

 

たった3行のコードでも、8項目もあれば、結構な行数になりますね。

 

 

何度も言いますが、左辺と右辺を比べて、同じような処理であるならば、改善ができます。

 

そのコツを紹介します。

 

 

 

 

 

 

このブログはこんな人にお勧め


ACCESSVBAを、勉強している人

クラスモジュールを、勉強したが、使い方がわからない人

クラスモジュール利用することで、ワクワクしたい人

 

 

 


このブログを、読み終わるころには・・・・

 

どの、ブログよりも、わかりやすく解説します。

しかし、本当の、クラスモジュールの利用方法では内容です。

ACCESS、Excelのクラスモジュールは、一括イベントの管理と考えましょう。

 

クラスモジュールの書き方のコツ

 

 

クラスモジュールに関しては、書き方というよりは、コピペをしないで、

時間がかかっても、10回くらい書いてみましょう。

 

そうすると、感動が生まれます。

 

なぜ、?

インテリセンスが使えるからです。

 

結構な感動です。

Private Sub テキスト4_KeyDown(KeyCode As Integer, Shift As Integer)

End Sub

 

これは、ACCESSのフォーム上で、キークリック時に発生するイベントです。

多分ですが、テキストボックス4を、クラスモジュールで、どのように表現するのかが、理解できないと思います。

そうです。

テキスト4と記載してしまえば、そのイベントは、テキスト4にしか、発生しないからです。

また、KeyDown(KeyCode As Integer, Shift As Integer)

クラスモジュールで、どう書くの?ってなりますよね?

この辺の疑問を解決します。

 

 

クラスモジュールの書き方のコツ 作業手順 その1 イベントの種類は、Onに属する

 


 

このように、イベントが集約されています。

ここで、すでに、もう感動です。

ただ、OnClickのように、先頭にOnが付いています。

Onには、その一員、属しているという意味がありますね。

 

私はその委員の一員だ。

I am on the committee.

 

こんな感じです。

つまり、Onがイベントを集約していると考えました。

 

 

クラスモジュールの書き方のコツ 作業手順 その2 対象物は、代名詞に置き換える

 

クラスモジュールを、勉強していて、思ったのは、勉強している言語は、

VBAであれ、Javaであれ、英語ですね。

つまり、日本語の知識のみで、極めようと思うのが、無理なのです。

Taro has a bag

Taro’s bag is red

こういう、書き方はしないですよね。

つまり、His bag is red となりますよね?

 

Taro’s bag⇒VBAで言えば、Range(“A1”)=”red”こんな感じ

His bag⇒VBAでいうなら、Cells(1,1)=”red”こんな感じ

ここで、変数、つまり、英語で言うところの代名詞が、出てきます。

大量の処理を、行うための技ですね。

でも、これは、主観ですよね。バックの色が、赤って感じるのは。

だから、クラスモジュールと、今回で言えば、フォームモジュールに、共通の代名詞が必要なのです。

英語でいうなら、theが付くのです。

Look at this the fucking gay ⇒ 見ろ、いかれた野郎だ!

この、いかれた野郎は、話し手、聞き手の、共通認識ですよね。

ここが重要です。

クラスモジュールと、フォームモジュールの共通の、the fucking gayを作成します。

では、今回のthe fucking gay は、myCtrlになります。

 

 

クラスモジュールの書き方のコツ 作業手順 その3 クラスモジュールのコード

 


 

今回は、テキストボックスにたいして、イベントを発生さます。

その際に、initで、一旦初期化をします。

そして、tbに関して、myCtrlを設定するのです。

myCtrlは、クリックしたときにイベントが発生します。

そう、paste,enter,backspaceしかできないようにします。

 

クラスモジュールの書き方のコツ 作業手順 その4 フォームモジュール


 

myCtrlを、Collecitonにセットします。

その、Collecitonの中をFor eachで検索してします。

適用になるのは、テキストボックスの先頭に、Ptxtと、冠が付いているのもだけに適用になります。

24行のコードが、10行のなりました。

 

まとめ           


2週にわたり、クラスモジュールを、紹介しました。

またの機会になると思いますが、もっとサンプルコードはありますが、一旦この辺で、終了したいと思います。

今回も最後まで読んでいただきありがとうございました。

ファイル販売

私のホームページでも販売しています。このようなファイルは、全部で、300ファイル前後ありますが、総ダウンロード数は、10,000件を、超えました。10,000件超えてから、面倒なので、カウントしていないです。

勉強したい方、会社の実務で利用したい方にお勧めです。

はっきり言いますが、ネットで調べる時間を考えたら、購入したほうが、時間の節約になります。

まして、ネットのコードは、作動するとは限りません。

料金は、200円です。

よろしくお願いします。


ここから先は

69字

¥ 200

よろしければサポートをお願いします。いただいたお金に関しては、書籍の購入に充て、より良い情報を皆様に提供します。