Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

適用対象

Form オブジェクト

AllowEdits プロパティを使用すると、ユーザーがフォームを使用するときにユーザーに保存済みレコードの編集を許可するかどうかを指定できます。 ブール型の値の読み取り/書き込みが可能です。

expression.AllowEdits

expression 必ず指定します。 [適用先] リスト内のいずれかのオブジェクトを返す式。

設定

"AllowEdits/更新の許可" プロパティでは、次の設定が使用されます。

設定

Visual Basic

説明

Yes/はい

True

(既定) ユーザーが保存済みのレコードを編集できます。

No

False

ユーザーが保存済みのレコードを編集できません。

"AllowEdits/更新の許可" プロパティを設定するには、フォームのプロパティ シート、マクロ、または Visual Basic for Applications (VBA) コードを使用します。

解説

"AllowEdits/更新の許可" プロパティを使用すると、フォームに表示される既存のデータが変更されないようにすることができます。 特定のコントロールのデータを変更されないようにするには、Enabled または Locked プロパティを使用します。

既存のレコードが変更されないようにする (フォームを参照のみ可能にする) には、"AllowAdditions/追加の許可"、"AllowDeletions/削除の許可"、"AllowEdits/更新の許可" の各プロパティを No に設定します。 また、"RecordsetType/レコード セット" プロパティを Snapshot に設定しても、レコードを参照のみ可能にすることができます。

プログラムによってフィールド値を変更すると、 AllowEdits プロパティの設定に関係なく、現在のレコードが編集可能になります。 プログラムで編集する必要があるレコードにユーザーが変更を加えないようにする (AllowEditsNo) 場合は、プログラムによる変更後にレコードを保存します。 AllowEdits プロパティ設定は、現在のレコードに対する未保存の変更が保存された後に再度適用されます。

注: OpenForm アクションの Data Mode 引数が設定されている場合、Microsoft Office Access 2007 は多数のフォーム プロパティ設定をオーバーライドします。 OpenForm アクションの Data Mode 引数が Edit に設定されている場合、Access は次のプロパティ設定を使用してフォームを開きます。

  • AllowEdits: Yes

  • AllowDeletions: Yes

  • AllowAdditions: Yes

  • DataEntry: No

"OpenForm/フォームを開く" アクションによってこれらの既存のプロパティ設定が上書きされないようにするには、"Data Mode/データ モード" 引数の設定を省略して、Access がフォームによって定義されたプロパティ設定を使用するようにします。

使用例

次の使用例では、フォーム上のすべてのコントロールの ControlType プロパティを調べます。 各ラベル コントロールおよびテキスト ボックス コントロールの "SpecialEffect/立体表示" プロパティは、プロシージャによって設定されます。 ラベル コントロールの "SpecialEffect/立体表示" プロパティが Shadowed に、テキスト ボックス コントロールの "SpecialEffect/立体表示" プロパティが Normal に設定され、"AllowAdditions/追加の許可"、"AllowDeletions/削除の許可"、および "AllowEdits/更新の許可" プロパティがすべて True に設定されている場合、基になるデータを編集できるように、intCanEdit 変数が設定されます。

Sub ToggleControl(frm As Form)    Dim ctl As Control    Dim intI As Integer, intCanEdit As Integer    Const conTransparent = 0    Const conWhite = 16777215    For Each ctl in frm.Controls        With ctl            Select Case .ControlType                Case acLabel                    If .SpecialEffect = acEffectShadow Then                        .SpecialEffect = acEffectNormal                        .BorderStyle = conTransparent                        intCanEdit = True                    Else                        .SpecialEffect = acEffectShadow                        intCanEdit = False                    End If                Case acTextBox                    If .SpecialEffect = acEffectNormal Then                        .SpecialEffect = acEffectSunken                        .BackColor = conWhite                    Else                        .SpecialEffect = acEffectNormal                        .BackColor = frm.Detail.BackColor                    End If            End Select        End With    Next ctl    If intCanEdit = IFalse Then        With frm            .AllowAdditions = False            .AllowDeletions = False            .AllowEdits = False        End With    Else        With frm            .AllowAdditions = True            .AllowDeletions = True            .AllowEdits = True        End With    End IfEnd Sub

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。