企業研修講師派遣のBESTグループ
出張パソコン教室ITスクール
webコンサルティングスクール
パソコンの家庭教師BEST

Home Access(アクセス) プログラミング|Access(アクセス)VBA

Q:Accessのプログラミングについて、簡単に説明してください。

Accessはフォームやレポートで、VBA(Visual Basic for Application)を使ってプログラミングができます。これからフォームにプログラムを書く手順を説明します。

*今回の目標は、「プログラムを書いてみる。」ということです。
まずは動かしてみることに集中してください。

初めは動きを見てから、次にプログラムの意味を考えたほうが理解しやすいです。その逆だとかなり苦労します。

この段階では、プログラムが何を意味しているかわからなくてかまいません。そのためあえてプログラムの意味は省略しました。意味は次回にまとめて解説します。

———————————————————————-
1.Accessのファイルを起動します。

2.画面が開きますので、オブジェクトの「フォーム」を選択します。

3.ツールバーから「コード」をクリックします。

4.VBAの画面が開きました。この画面にプログラムを書いていきます。

5.まず図のように先頭に入力します。

6.次に左のコンボボックスから「Form」、右のコンボボックスから「Load」を選択します。

7.するとFormLoad(フォームを読み込んだ時)に動くプログラムを書く場所ができました。Accessのプログラミングでは、「○○を□□した時」というようにコンボボックスで選択します。

8.「Private Sub Form_Load()」から「End Sub」がプログラムの単位です。この2行は自動で表示されますので、その間に3行プログラムを書きます。

書いている途中で、入力を助けるリストが表示されますので選択します。見た目より書く量は少ないと感じるはずです。

9.同じ要領で2つのコンボボックスで場所を作り、以下のようにプログラムを完成させましょう。(英数字や記号は半角、その他は全角です)

Option Compare Database
Option Explicit
Dim Res As Variant

Private Sub Form_Load()

Me.AllowAdditions = False
Me.AllowDeletions = False
DoCmd.SetWarnings False

End Sub

Private Sub 印刷_click()

Res = MsgBox(“印刷してよろしいですか?”, vbYesNo, “印刷の確認”)

If Res = vbYes Then
DoCmd.OpenReport “R01商品マスター”, acViewPreview
Else

End If

End Sub

Private Sub 削除_Click()

If MsgBox(“削除します。よろしいですか?”, vbOKCancel, “確認”) = vbOK Then
Me.AllowDeletions = True

On Error GoTo err_削除_click

DoCmd.RunCommand acCmdDeleteRecord
Me.AllowDeletions = False
Else

End If

Exit Sub

err_削除_click:
MsgBox Err.Description

End Sub

Private Sub 商品名_AfterUpdate()
Me.AllowAdditions = False
End Sub

Private Sub 新規_Click()

Me.AllowAdditions = True
DoCmd.GoToRecord acDataForm, “F01商品マスター”, acNewRec
Me.商品名.SetFocus

End Sub

Private Sub 単価_AfterUpdate()
Me.AllowAdditions = False
End Sub

9.完成したらツールバーの「保存」をクリックして、VBAは閉じておきます。

———————————————————————-

どうですか?プログラムの意味はひとまず置いておいて、書くこと自体はそれほど難しくないですね。ここが大事です。

とりあえず書いてみる→動かしてみる→理解する

次回に動作を確認したあと、プログラムを解説します。
 

ご質問や感想は上記からコメントをお願い致します

返信を残す