MS Access

テーブル/クエリのデータシートビューでイベントを処理する方法

投稿日:2013年4月9日 更新日:

参考:テーブル/クエリのデータシートビューでイベントを処理する方法 | YU-TANG’s MS-Access Discovery

え、そうなの?
クエリを閉じた際のイベントをセットできるの?
知らなかった~。
Accessは、ホント、隠れた技がたくさんあるよね~。

自分の場合、上記を参考に、

Private Sub cmdクエリ表示はがき用_Click()
    DoCmd.OpenQuery "新規顧客はがき用", acViewNormal
    Screen.ActiveDatasheet.OnClose = "=はがきチェック更新()"
End Sub

とフォームモジュールに書いて、さらに標準モジュールに、

Public Function はがきチェック更新()
Dim SQL As String

    If MsgBox("表示中のデータについて「はがき作成済み」とします(データ更新)", vbOKCancel) = vbOK Then
        DoCmd.SetWarnings False
        SQL = "UPDATE master SET はがき = True WHERE 顧客ID = " & Me.txt廃番 & ";"
        DoCmd.RunSQL SQL
        DoCmd.SetWarnings True
        MsgBox "顧客IDを更新しました。"
    End If
    
End Function
 

・・・なんていう風にして使った。
便利・便利。

-MS Access

執筆者:

関連記事

no image

AccessのレポートでNoDataでイベントキャンセル後もReport_Closeが実行されて困った

Accessのレポートで表示するデータがない場合は、以下のように書けばスマートにキャンセルできる。 Private Sub Report_NoData(Cancel As Integer) MsgBo …

no image

フォームを直接Accessで印刷プレビューし、閉じるときのイベントで処理をしたい

困ったこと: 前提として、自分とこのシステムは、フォームを直接Accessで印刷プレビューして、そのまま印刷できるように作ってある。 しかし、リボンに印刷プレビューを閉じるボタンがある一方で、フォーム …

no image

Accessで「イベントプロパティに指定した式MouseMoveでエラーが発生しました。フォームまたはレポート上のActiveX コントロールを読み込むときにエラーが発生しました。」

フォームに配置したプログレスバーコントロールの上をマウスポインタが横切ろうとすると、必ず上のエラーメッセージが表示される。 原因がわからず、対処もできず、困っていた。 Google先生も頼りにならず、 …

no image

Accessのフォーム/レポートのコントロール同士をくっつけて桝目状にしたい

レポートを、Excelのような桝目の罫線にしたい。 お客からこんなニーズが多い。 やったことがある人ならわかるけど、これが、なかなか苦労する。 レポートのデザインビューで、いざ個々にコントロールをきち …

no image

Accessでレコードコピー(オートナンバー除く)の決定版のコード!

Accessで、レコードのオートナンバーを除くフィールドを1行、複製(コピー)したくって、Google検索したのだけどなかなか出てこず、しかしやっと見つけた、黄金のソース・・・・。 [VBA] ADO …