So-net無料ブログ作成

アクセス小僧:追加変更許可 [コンピューター]

アクセスで作成したデータベースに

レコードを追加しようとしたところ、追加できない旨のメッセージを出して、止まってしまった。
調べたところ、フォームのプロパティのうち、

追加の許可AllowAdditions
削除の許可AllowDeletions
更新の許可AllowEdits
データ入力用DataEntry


form_property.jpg

の4つが関係ありそうな感じである。そこで、フォーム上にボタンを作って、上記のプロパティを切り替えるマクロ作りました。

Private Sub 追加変更許可_Click()
  Debug.Print "Me.AllowAdditions(before)=" & Me.AllowAdditions
  Select Case Me.追加変更許可.Caption
  Case "追加変更許可"
    Me.追加変更許可.Caption = "追加禁止"
    Me.追加変更許可.BackColor = RGB(255, 255, 153)
    Me.AllowAdditions = False ' レコード追加禁止
    Me.AllowEdits = True ' 変更許可
    Me.AllowDeletions = True ' 削除許可
    Me.DataEntry = False ' データ入力用じゃない
    Me.レコード追加.Enabled = False ' レコード追加ボタン無効化
    Me.レコードの複製.Enabled = False ' レコードの複製ボタン無効化
  Case "追加禁止"
    Me.追加変更許可.Caption = "追加変更禁止"
    Me.追加変更許可.BackColor = RGB(255, 204, 204)
    Me.AllowAdditions = False ' レコード追加禁止
    Me.AllowEdits = False ' 変更禁止
    Me.AllowDeletions = False ' 削除禁止
    Me.DataEntry = False ' データ入力用じゃない
    Me.レコード追加.Enabled = False ' レコード追加ボタン無効化
    Me.レコードの複製.Enabled = False ' レコードの複製ボタン無効化
  Case Else
    Me.追加変更許可.Caption = "追加変更許可"
    Me.追加変更許可.BackColor = RGB(209, 234, 240)
    Me.AllowAdditions = True ' レコード追加許可
    Me.AllowEdits = True ' 変更許可
    Me.AllowDeletions = True ' 削除許可
    Me.DataEntry = False ' データ入力用じゃない
    Me.レコード追加.Enabled = True ' レコード追加ボタン有効化
    Me.レコードの複製.Enabled = True ' レコードの複製ボタン有効化
  End Select
  Debug.Print "Me.AllowAdditions(after)=" & Me.AllowAdditions
End Sub

それから、フォームをロードしたときに、必ずレコード追加できる状態になるように、フォーム読込時のマクロにも、次のコードを追加しました。

Private Sub Form_Load()
(中略)
  ' 追加変更許可
  Me.追加変更許可.Caption = "追加変更許可"
  Me.追加変更許可.BackColor = RGB(209, 234, 240)
  Me.AllowAdditions = True ' レコード追加許可
  Me.AllowEdits = True ' 変更許可
  Me.AllowDeletions = True ' 削除許可
  Me.DataEntry = False ' データ入力用じゃない
  Me.レコード追加.Enabled = True ' レコード追加ボタン有効化
  Me.レコードの複製.Enabled = True ' レコードの複製ボタン有効化
(中略)
End Sub
ヤバイぜ!(6)  コメント(3) 

ヤバイぜ! 6

コメント 3

mayu

明けましておめでとうございます。
本年もよろしくお願いいたします。 (*´▽`*)
by mayu (2019-01-01 20:53) 

cheese999

mayuさん、
明けましておめでとうございます。
今年もよろしくお願いします(^_0)ノ
by cheese999 (2019-01-03 00:10) 

cheese999

ヤバイぜ! ありがとうございます(^_0)ノ
by cheese999 (2019-01-03 00:12) 

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字(英大文字の「オー」、英小文字の「ユー」、アラビア数字の「ハチ」、アラビア数字の「イチ」、アラビア数字の「ニ」)を入力してください。

Facebook コメント