적용 대상
Form 개체 |
AllowEdits 속성을 사용하여 사용자가 폼을 사용할 때 저장된 레코드를 편집할 수 있는지 여부를 지정할 수 있습니다. 읽기/쓰기 Boolean입니다.
expression.AllowEdits
식 필수 요소입니다. 적용 대상 목록에 있는 개체 중 하나를 반환하는 식입니다.
설정
AllowEdits 속성에는 다음 설정이 사용됩니다.
설정 |
Visual Basic |
설명 |
Yes |
True |
(기본값) 사용자가 저장된 레코드를 편집할 수 있습니다. |
아니요 |
False |
사용자가 저장된 레코드를 편집할 수 없습니다. |
폼의 속성 시트, 매크로 또는 VBA(Visual Basic for Applications) 코드를 사용하여 AllowEdits 속성을 설정할 수 있습니다.
주의
AllowEdits 속성을 사용하여 폼에서 표시되는 기존 데이터를 변경하지 못하도록 할 수 있습니다. 특정 컨트롤에서 데이터를 변경하지 못하도록 하려면 Enabled 또는 Locked 속성을 사용합니다.
기존 레코드를 변경하지 못하게 하려면(폼을 읽기 전용으로 만들기) AllowAdditions, AllowDeletions 및 AllowEdits 속성을 No로 설정합니다. RecordsetType 속성을 Snapshot으로 설정하여 레코드를 읽기 전용으로 만들 수도 있습니다.
필드 값을 프로그래밍 방식으로 변경하면 AllowEdits 속성 설정에 관계없이 현재 레코드를 편집할 수 있습니다. 사용자가 프로그래밍 방식으로 편집해야 하는 레코드(AllowEdits is No)를 변경하지 못하게 하려면 프로그래밍 방식으로 변경한 후 레코드를 저장합니다. 현재 레코드에 대한 저장되지 않은 변경 내용이 저장되면 AllowEdits 속성 설정이 다시 한 번 적용됩니다.
참고: OpenForm 작업의 Data Mode 인수가 설정되면 Microsoft Office Access 2007에서는 많은 폼 속성 설정을 재정의합니다. OpenForm 작업의 Data Mode 인수가 Edit으로 설정되면 Access에서는 다음 속성 설정이 포함된 폼을 엽니다.
-
AllowEdits - Yes
-
AllowDeletions - Yes
-
AllowAdditions - Yes
-
DataEntry - No
OpenForm 작업이 이러한 기존 속성 설정을 재정의하지 못하게 하려면 Access가 폼에 정의된 속성 설정을 사용하도록 Data Mode 인수 설정을 생략합니다.
예
다음 예에서는 폼의 모든 컨트롤에 대한 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 If
End Sub