Form.AllowEdits プロパティ (Access)

AllowEdits プロパティを使用して、フォームの使用時にユーザーが保存されたレコードを編集できるかどうかを指定します。 値の取得と設定が可能なブール型 (Boolean) の値です。

構文

AllowEdits

expressionForm オブジェクトを表す変数です。

注釈

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

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

AllowEdits プロパティが [いいえ] に設定されている場合、[レコードの削除] メニュー コマンドと [データ入力] メニュー コマンドは既存のレコードでは使用できません。 ( AllowAdditions プロパティが Yes に設定されている場合、新しいレコードで引き続き使用できる場合があります)。

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

注:

OpenForm アクションの DataMode 引数を設定すると、Microsoft Access は多数のフォーム プロパティ設定を上書きします。 OpenForm アクションの DataMode 引数が編集に設定されている場合、Access は次のプロパティ設定でフォームを開きます。

  • AllowEdits - はい
  • AllowDeletions - はい
  • AllowAdditions - はい
  • DataEntry - いいえ

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

次の例では、フォーム上のすべてのコントロールの ControlType プロパティを調べます。 ラベル コントロールとテキスト ボックス コントロールに対しては、プロシージャで " SpecialEffect /立体表示" プロパティを切り替えます。 ラベル コントロールの SpecialEffect プロパティが Shadowed に設定され、テキスト ボックス コントロールの SpecialEffect プロパティが Normal に設定され、 AllowAdditionsAllowDeletionsおよび 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 If 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。