こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

アクセスの標準モジュールを教えてください

アクセス初心者です。イベントプロシージャで以下のようなVBAを作りました。(動作しました。)
これを複数のレポートで使いたいので,標準モジュールで作りたいのですが,うまくできません。
下のVBAを標準モジュールで書くとどう書くのか教えてください。また,もしcallで呼び出すときの注意点等もあれば教えてください。
下のVBAでしたいことは,「加点減点*○」というイメージを「tbox_加点」というテキストボックスの値に応じて可視にするというものです。
アクセスは2007を使っています。よろしくお願いします。

Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer)
Dim kt As Long
Dim st As Long

Me.加点減点_10○.Visible = False
Me.加点減点_5○.Visible = False
Me.加点減点0○.Visible = False
Me.加点減点5○.Visible = False
Me.加点減点10○.Visible = False

kt = Me.tbox_加点

Select Case kt
Case -10
Me.加点減点_10○.Visible = True
Case -5
Me.加点減点_5○.Visible = True
Case 0
Me.加点減点0○.Visible = True
Case 5
Me.加点減点5○.Visible = True
Case 10
Me.加点減点10○.Visible = True
End Select

End Sub

投稿日時 - 2013-09-04 21:40:15

QNo.8249830

困ってます

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

まず、そのコードを標準モジュールにそのままコピーします。

コードの1行目を、

Public Sub 加点減点_Format()

と書き換えます。

コード内の Me を CodeContextObject に置換します。

レポートのコードは下記のようになります。

Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer)

加点減点_Format

End Sub

投稿日時 - 2013-09-05 01:06:49

お礼

ありがとうございました。
大変勉強になりました。
うまくいきました。
Meでひっかかって途方に暮れていました。
CodeContextObjectは,これからも使えそうです。
本当に助かりました。

投稿日時 - 2013-09-05 19:13:02

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer)
  Me.加点減点_10○.Visible = CBool(Me.tbox_加点= -10)
  Me.加点減点_5○.Visible = CBool(Me.tbox_加点= -5)
  Me.加点減点0○.Visible = CBool(Me.tbox_加点= 0)
  Me.加点減点5○.Visible = CBool(Me.tbox_加点= 5)
  Me.加点減点10○.Visible = CBool(Me.tbox_加点= 10)
End Sub

コードの全ては、レポートに配したコントロールの属性設定。標準モジュールにするべき性格のものではないかと・・・。たかだか5行程度です。コピペで十分と思いますよ。

投稿日時 - 2013-09-05 08:06:49

お礼

ありがとうございます。
CBool,勉強になりました。
5行で終わるのは感動でした。

投稿日時 - 2013-09-05 19:10:42

あなたにオススメの質問