Applies to
Form Object |
You can use the AllowAdditions property to specify whether a user can add a record when using a form. Read/write Boolean.
expression.AllowAdditions
expression Required. An expression that returns one of the objects in the Applies To list.
Setting
The AllowAdditions property uses the following settings.
Setting |
Visual Basic |
Description |
---|---|---|
Yes |
True |
(Default) The user can add new records. |
No |
False |
The user can't add new records. |
You can set the AllowAdditions property by using the form's property sheet, a macro, or Visual Basic for Applications (VBA) code.
Remarks
Set the AllowAdditions property to No to allow users to view or edit existing records but not add new records.
If you want to prevent changes to existing records (make a form read-only), set the AllowAdditions, AllowDeletions, and AllowEdits properties to No. You can also make records read-only by setting the RecordsetType property to Snapshot.
If you want to open a form for data entry only, set the form's DataEntry property to Yes.
When the AllowAdditions property is set to No, the New Record command under Recordson the Data tab isn't available.
Note: When the Data Mode argument of the OpenForm action is used, Access will override a number of form property settings. If the Data Mode argument of the OpenForm action is set to Edit, Access will open the form with the following property settings:
-
AllowEdits — Yes
-
AllowDeletions — Yes
-
AllowAdditions — Yes
-
DataEntry — No
To prevent the OpenForm action from overriding any of these existing property settings, omit the Data Mode argument setting so that Access will use the property settings defined by the form.
Example
The following example examines the ControlType property for all controls on a form. For each label and text box control, the procedure toggles the SpecialEffect property for those controls. When the label controls' SpecialEffect property is set to Shadowed and the text box controls' SpecialEffect property is set to Normal and the AllowAdditions, AllowDeletions, and AllowEdits properties are all set to True, the intCanEdit variable is toggled to allow editing of the underlying data.
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