*

Access VBA データベース作成4 新規レコード追加 登録フォームの作成2

公開日: : 最終更新日:2014/04/20 データベース作成

データベース作成4 登録フォームの作成2

実践データベース作成の第4回目は登録フォームの作成Part2です。
前回はフォームの読み込み時のイベントを作成しましたので、今回はテーブルへ新規レコードを追加するプログラムを作成します。
・未入力データのチェック
・テーブルへの追加
上記のような流れになります。

では、実際にVBAをどのように組み込んでいくのか説明します。

スポンサーリンク

コマンドボタン(登録)のクリックイベント

コマンドボタンのイベントは「クリック時」になります。

sakusei12

sakusei14
コマンドボタンの「クリック時」には以下のプログラムを実行します。
1.各テキストボックス、コンボボックスが未入力(Null値)ではないか確認
2.「T_社員マスタ2013」を開き、新規レコードを追加
実際のプログラムは以下のようになります。

プログラムの例

Private Sub 登録コマンドボタン_Click()

Dim CN As ADODB.Connection
Dim RS As ADODB.Recordset

‘未入力エラー処理

If IsNull(Me.新規社員コード) = True Then
MsgBox “社員コードが入力されていません!”, vbCritical, “未入力エラー”
Me.新規社員コード.SetFocus
Exit Sub
End If

If IsNull(Me.新規名前) = True Then
MsgBox “名前が入力されていません!”, vbCritical, “未入力エラー”
Me.新規名前.SetFocus
Exit Sub
End If

If IsNull(Me.新規性別コード) = True Then
MsgBox “性別が入力されていません!”, vbCritical, “未入力エラー”
Me.新規性別コード.SetFocus
Exit Sub
End If

If IsNull(Me.新規所属部署コード) = True Then
MsgBox “所属部署が入力されていません!”, vbCritical, “未入力エラー”
Me.新規所属部署コード.SetFocus
Exit Sub
End If

If IsNull(Me.新規入社年月日) = True Then
MsgBox “入社年月日が入力されていません!”, vbCritical, “未入力エラー”
Me.新規入社年月日.SetFocus
Exit Sub
End If

‘登録処理

If MsgBox(“登録を行います。よろしいですか?”, vbQuestion + vbYesNo, “登録の確認”) = vbYes Then

Set CN = CurrentProject.Connection
Set RS = New ADODB.Recordset

RS.Open “T_社員マスタ2013”, CN, adOpenStatic, adLockOptimistic

RS.AddNew

RS!社員コード = Me.新規社員コード
RS!名前 = Me.新規名前
RS!性別コード = Me.新規性別コード
RS!所属部署コード = Me.新規所属部署コード
RS!入社年月日 = Me.新規入社年月日
RS!更新日 = Me.新規入社年月日

RS.Update

RS.Close: Set RS = Nothing
CN.Close: Set CN = Nothing

MsgBox “登録が完了しました。”, vbInformation, “登録完了”

Me.新規社員コード = Null
Me.新規名前 = Null
Me.新規性別コード = Null
Me.新規所属部署コード = Null
Me.新規入社年月日 = Null

‘フォーム再読み込み
Call Form_Load

End If

End Sub

プログラムの説明

未入力エラー処理

各テキストボックス、コンボボックスが未入力(Null値)の場合、警告メッセージを表示し、プログラムをその時点で終了させます。
未入力エラー処理の詳細はこちらを参照して下さい。

sakusei16

登録処理

(1)Yes/No型のメッセージボックスを表示し、Yesが選択された場合のみ登録処理を実行します。

sakusei15

(2)ADOを使用して「T_社員マスタ2013」を開きます。
(3)【Add.New】で新規入力データを「T_社員マスタ2013」に追加します。
(4)登録が完了したメッセージを表示します。
(5)【Me.新規社員コード = Null】各テキストボックス、コンボボックスの値を空にします。
(6)【Call Form_Load】フォームの再読み込みを行います。
フォームの再読み込みを行うことで新たに新規社員コードを取得し直します。

いかがでしょうか?
これでコマンドボタンのクリック時イベントは終了です。
また、登録フォームの作成もこれにて完了になります。
次回からは社員検索フォームの作成に移ります。

You Tubeにて登録フォームの動画を公開しました。
画像だけですとイメージしにくい方は参考にして下さい。

スポンサーリンク

ad-pc

ad-pc

関連記事

sakusei17

Access VBA データベース作成5 コンボボックスの作成 検索フォームの作成1

データベース作成5 検索フォームの作成1 実践データベース作成の第5回目は検索フォームの作成Par

記事を読む

sakusei11

Access VBA データベース作成2 テーブルの作成

データベース作成2 テーブルの作成 実践データベース作成の第2回目はテーブルの作成を行います。

記事を読む

sakusei18

Access VBA データベース作成6 SQLでLike演算子 検索フォームの作成2

データベース作成6 検索フォームの作成2 実践データベース作成の第6回目は検索フォームの作成Par

記事を読む

sakusei12

Access VBA データベース作成3 新規レコード取得 登録フォームの作成1

データベース作成3 登録フォームの作成1 実践データベース作成の第3回目は登録フォームの作成を行い

記事を読む

sakusei02

Access VBA データベース作成1 ADO参照設定

データベース作成1 準備 データベース作成の実践編として数回に渡り、AccessVBAを使用したデ

記事を読む

sakusei27

Access VBA データベース作成10 フォームを開く メインフォームの作成

データベース作成10 メインフォームの作成 実践データベース作成の第10回目はメインフォームの作成

記事を読む

sakusei20

Access VBA データベース作成7 リストボックスの値取得 検索フォームの作成3

データベース作成7 検索フォームの作成3 実践データベース作成の第7回目は検索フォームの作成Par

記事を読む

sakusei24

Access VBA データベース作成9 データの更新 編集フォームの作成2

データベース作成9 編集フォームの作成2 実践データベース作成の第9回目は編集フォームの作成Par

記事を読む

sakusei22

Access VBA データベース作成8 コンボボックスの選択データを表示 編集フォームの作成1

データベース作成8 編集フォームの作成1 実践データベース作成の第8回目は編集フォームの作成Par

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

転職01
初心者がAccess VBAの仕事に就く為には

初心者がAccess VBAを使った仕事に就く 私はSEやITエンジ

sound01
Access VBA 音を鳴らす PlaySound

音を鳴らす PlaySound Access上で効果音を鳴らすプログ

pass01
Access VBA フォームをパスワードで制限

フォームをパスワードで制限 Accessで作成したデータベース使用時

prg01
Access VBA 処理の進行状況を表示するプログレスバー(ProgressBar)

処理の進行状況を表示するプログレスバー Accessで処理に時間のか

excel03
Access VBA AccessのデータをExcel(エクセル)へ変換

AccessのデータをExcel(エクセル)へ変換 Accessで使

→もっと見る

PAGE TOP ↑