Właściwość AllowEdits

Dotyczy
Access dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Dotyczy

Obiekt Form

Właściwość AllowEdits (EdycjaDzwólna ) umożliwia określenie, czy użytkownik może edytować zapisane rekordy podczas korzystania z formularza. Właściwość do odczytu i zapisu typu Boolean (wartość logiczna).

wyrażenie.AllowEdits (EdycjaDozwolona)

Wyrażenie Wymagane. Wyrażenie zwracające jeden z obiektów na liście Dotyczy.

Ustawienie

Właściwość AllowEdits (EdycjaDozwolona) może przybierać następujące wartości ustawień.

Ustawienie Visual Basic Opis
Tak True (Prawda) (Domyślne) Użytkownik może edytować zapisane rekordy.
Nie False (Fałsz) Użytkownik nie może edytować zapisanych rekordów.

      

Właściwość AllowEdits (AllowEdits) można ustawić, używając arkusza właściwości formularza, makra lub kodu Visual Basic for Applications (VBA).

Spostrzeżenia

Właściwości AllowEdits (EdycjaDozwolona) można użyć, aby uniemożliwić zmienianie jakichkolwiek danych wyświetlanych w formularzu. Aby zapobiec zmienianiu danych w określonej kontrolce, użyj właściwości Enabled lub Locked.

Aby zapobiec zmianom w istniejących rekordach (utworzyć formularz tylko do odczytu), należy właściwościom AllowAdditions (DodawanieDozwolone), AllowDeletions (UsuwanieDozwolone) i AllowEdits (EdycjaDozwolona) nadać wartość Nie. Rekordom można także nadać status tylko do odczytu, ustawiając właściwość RecordsetType na wartość Migawka.

Programistyczna modyfikacja wartości pola powoduje, że bieżący rekord można edytować, bez względu na ustawienie właściwości AllowEdits (EdycjaDozwolona). Aby uniemożliwić użytkownikowi dokonywanie zmian w rekordzie (właściwość AllowEdits (EdycjaDozwolona) ustawiona na wartość Nie), który ma być edytowany programistycznie, zapisz rekord po dowolnych zmianach programistycznych; ustawienie właściwości AllowEdits (EdycjaDozwolona) będzie znów obowiązywać, kiedy zostaną zapisane wszelkie niezapisane dotąd zmiany dokonane w bieżącym rekordzie.

Uwaga

Po ustawieniu argumentu Tryb danych akcji OtwórzFormularz program Microsoft Office Access 2007 zastąpi wiele ustawień właściwości formularza. Jeśli argument Tryb danych akcji OpenForm (OtwórzFormularz) ma wartość Edycja, program Access otworzy formularz z następującymi ustawieniami właściwości:

  • AllowEdits (EdycjaDozwolona) — Tak
  • AllowDeletions (UsuwanieDozwolone) — Tak
  • AllowAdditions (DodawanieDozwolone) — Tak
  • DataEntry — Nie

Aby zapobiec zastępowaniu istniejących ustawień właściwości przez akcję OpenForm (OtwórzFormularz), pomiń ustawienie argumentu Tryb danych, w wyniku czego program Access użyje ustawień właściwości zdefiniowanych w formularzu.

Przykład

W poniższym przykładzie dla wszystkich kontrolek formularza jest sprawdzana wartość właściwości ControlType (TypKontrolki). Dla każdej kontrolki etykiety i pola tekstowego procedura przełącza właściwość SpecialEffect (EfektSpecjalny). Gdy właściwość SpecialEffect kontrolek etykiety jest ustawiona na Wartość W tle , a właściwość SpecialEffect kontrolek pola tekstowego jest ustawiona na Wartość normalna , a właściwości AllowAdditions, AllowDeletions i AllowEdits (EdycjaDzwólna ) są ustawione na Prawda, intCanEdit zmienna jest przełączona w celu umożliwienia edytowania danych źródłowych.

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