Akcja makra UstawWartość (SetValue)

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

Za pomocą akcji makra UstawWartość można ustawić wartość pola, kontrolki lub właściwości programu Access w formularzu, arkuszu danych formularza lub raporcie.

Uwaga

Akcji makra SetValue (UstawWartość ) nie można użyć do ustawiania wartości właściwości programu Access zwracającej obiekt.

Uwaga

Ta akcja nie będzie dozwolona, jeśli baza danych nie jest zaufana.

Ustawienie

Akcja makra SetValue (UstawWartości ) ma następujące argumenty.

Argument akcji Opis
Element Nazwa pola, kontrolki lub właściwości, której wartość chcesz ustawić. Wprowadź pole, kontrolkę lub nazwę właściwości w polu Element w sekcji Argumenty akcji w oknie projektu makra. Do tego elementu należy użyć pełnej składni, na przykład nazwy kontrolki (kontrolki w formularzu lub raporcie, z której nazywano makro) lub formularzy. nazwa_formularza! nazwa_kontrolki. Jest to argument wymagany.
Wyrażenie Wyrażenie używane przez program Access do ustawiania wartości dla tego elementu. Aby odwołać się do wszystkich obiektów w wyrażeniu, należy zawsze użyć pełnej składni. Aby na przykład zwiększyć wartość kontrolki Wynagrodzenie w formularzu Pracownicy o 10 procent, należy użyć funkcji Forms!Employees!Salary*1.1. Jest to argument wymagany.

Uwaga: Nie należy używać znaku równości (=) przed wyrażeniem w tym arguście. W takim przypadku program Access oceni wyrażenie, a następnie użyje tej wartości jako wyrażenia w tym arguście. Może to spowodować nieoczekiwane wyniki, jeśli wyrażenie jest ciągiem. Jeśli na przykład wpiszesz dla tego argumentu ciąg ="String1 ", program Access najpierw oceni wyrażenie jako Ciąg1. Następnie używa ciągu1 jako wyrażenia w tym argumentzie, spodziewając się znaleźć kontrolkę lub właściwość o nazwie String1 w formularzu lub raporcie, który nazwał makro.

Uwaga

W bazie danych programu Access (.mdb lub accdb) kliknij przycisk Konstruuj , aby utworzyć wyrażenie dla któregokolwiek z tych argumentów za pomocą Konstruktora wyrażeń.

Spostrzeżenia

Za pomocą tej akcji można ustawić wartość pola lub kontrolki w formularzu, arkuszu danych formularza lub raporcie. Możesz również ustawić wartość dla prawie wszystkich właściwości kontrolek, formularzy i raportów w dowolnym widoku. Aby dowiedzieć się, czy określoną właściwość można ustawić przy użyciu makra i w jakich widokach można ją ustawić, zobacz temat Pomocy dla tej właściwości w Edytorze Visual Basic.

Możesz również ustawić wartość pola w tabeli źródłowej formularza, nawet jeśli formularz nie zawiera kontrolki powiązanej z polem. Użyj formularzy składni! nazwa_formularza! nazwa_pola w polu Element , aby ustawić wartość dla takiego pola. Do pola w tabeli źródłowej raportu można także odwoływać się przy użyciu funkcji Raporty składni. nazwa_raportu! nazwa_pola, ale w raporcie musi istnieć kontrolka powiązana z tym polem lub pole musi być określone w kontrolce obliczeniowej w raporcie.

Jeśli ustawisz wartość kontrolki w formularzu, akcja makra UstawWartość nie wyzwala reguł poprawności kontrolki na poziomie formularza, ale wyzwala reguły poprawności pola źródłowego na poziomie tabeli, jeśli kontrolka jest kontrolką powiązaną. Akcja makra SetValue również wyzwala ponowne obliczanie, ale ponowne obliczenie może nie nastąpić natychmiast. Aby wywołać natychmiastowe ponowne przemalowanie i wymusić ponowne obliczenie do końca, użyj akcji makra RepaintObject . Wartość ustawiona w kontrolce przy użyciu akcji makra SetValue nie ma wpływu na maskę wprowadzania ustawioną we właściwości InputMask kontrolki lub pola źródłowego.

Aby zmienić wartość kontrolki, możesz użyć akcji UstawWartość w makrze określonym przez właściwość zdarzenia AfterUpdate kontrolki. Nie można jednak użyć akcji SetValue (UstawWartość ) w makrze określonym przez właściwość zdarzenia BeforeUpdate kontrolki w celu zmiany wartości kontrolki (chociaż możesz użyć akcji SetValue (UstawWartość ) w celu zmiany wartości innych kontrolek. Możesz również użyć akcji SetValue (UstawWartość ) w makrze określonym przez właściwość BeforeUpdate lub AfterUpdate formularza, aby zmienić wartość dowolnych kontrolek w bieżącym rekordzie.

Uwaga

Za pomocą akcji makra UstawWartość nie można ustawić wartości następujących kontrolek:

  • Kontrolki powiązane i kontrolki obliczeniowe w raportach.
  • Kontrolki obliczeniowe w formularzach.

Porady

Za pomocą akcji makra UstawWartości można ukryć lub wyświetlić formularz w widoku formularza. Wprowadź formularze!nazwa_formularza**. Widoczny** w polu Element i Nie lub Tak w polu Wyrażenie . Ustawienie właściwości Widoczny formularza modalnego na Wartość Nie powoduje ukrycie formularza i sprawia, że jest on niemodalny. Ustawienie właściwości tak powoduje wyświetlenie formularza i ponowne zmodyfikowanie go.

Zmiana wartości lub dodanie nowych danych w kontrolce przy użyciu akcji SetValue (UstawWartość ) w makrze nie powoduje wyzwolenia zdarzeń, takich jak BeforeUpdate, BeforeInsert lub Change występujących po zmianie lub wprowadzeniu danych w tych kontrolkach w interfejsie użytkownika. Te zdarzenia nie występują również w przypadku ustawienia wartości kontrolki przy użyciu modułu Visual Basic for Applications (VBA).

Ta akcja nie jest dostępna w module VBA. Ustaw wartość bezpośrednio w języku VBA.

Przykład

Ustawianie wartości kontrolki przy użyciu makra

Poniższe makro powoduje otwarcie formularza Dodaj produkty z poziomu przycisku w formularzu Dostawcy. Pokazuje ono użycie akcji makr Echo, Close, OpenForm, SetValue i GoToControl . Akcja SetValue (SetValue ) ustawia w formularzu Products kontrolę SupplierID (IdentyfikatorDostawcy) na bieżącego dostawcę w formularzu Dostawcy. Akcja GoToControl przenosi fokus do pola CategoryID, gdzie można rozpocząć wprowadzanie danych dla nowego produktu. To makro powinno zostać dołączone do przycisku Dodaj produkty w formularzu Dostawcy.

Akcja Argumenty: ustawienie Komentarz
Echo Echo włączone: Nie Zatrzymaj aktualizowanie ekranu, gdy makro jest uruchomione.
Zamknij Typ obiektu: Formularz
Nazwa obiektu: Lista produktów
Zapisz: Nie
Zamknij formularz Lista produktów.
OtwórzFormularz Nazwa formularza: Produkty
Widok: Formularz
Tryb danych: Dodaj
Tryb okna: Normalny
Otwórz formularz Produkty.
Setvalue Element: [Formularze]! [Produkty]! [ID_dostawcy]
Wyrażenie: ID_dostawcy
Ustaw kontrolki ID_dostawcy dla bieżącego dostawcy w formularzu Dostawcy.
PrzejdźDoKontrolki Nazwa kontrolki: Identyfikator kategorii Przejdź do kontrolki CategoryID.