
Błąd wykonania 3021 – brak możliwości aktualizacji
Błąd występuje przy próbie aktualizacji obiektu Recordset otwartego w trybie tylko do odczytu.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA
Access, VBA -funkcje, metody, porady, przykłady

Błąd wykonania 3021 – brak możliwości aktualizacji
Błąd występuje przy próbie aktualizacji obiektu Recordset otwartego w trybie tylko do odczytu.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA

Błąd wykonania 3021 – brak bieżącego rekordu
Błąd występuje, gdy próbuje się odwołać do rekordu w obiekcie Recordset, który jest pusty lub nie zawiera żadnych danych. Innymi słowy, nie ma aktywnego rekordu, do którego można by się odwołać w danym momencie
Chcąc go uniknąć – warto sprawdzić, czy i ile rekordów ma Recordset, czy nie osiągnięto już ostatniego rekordu ewentualnie wprowadzić obsługę błędów.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA

Error 438 – Object doesn’t support this property or method
Błąd wykonania 438 – Obiekt nie obsługuje tej właściwości lub metody
Błąd pojawia się w przypadkach błędnego zastosowania parametru.
U mnie wystąpił w takiej procedurze
|
Public Sub WybierzFolderB() Dim FD As FileDialog Dim NazwaPlik As String Set FD = Application.FileDialog(msoFileDialogFolderPicker) With FD .Filters.Add „Obrazy jpg”, „*.jpg” |
Kompilacja kodu prawidłowa – Application.FileDialog ma taką właściwość, ale użycie jej parametrem wejściowym msoFileDialogFolderPicker (do zaznaczenia folderu) powoduje konflikt przy dodawaniu filtrów. Takie okno nie pozwala na filtrowanie.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA

Błąd wykonania 13 – Type mismatch
Błąd ten pojawia się w sytuacji niezgodności typów np. m.in. dodawanie liczby i tekstu itp.
Zabezpieczeniem przed wystąpieniem tego błędu jest sprawdzenie, czy dana wartość ma prawidłowy typ danych na przykład przez wykorzystanie którejś z funkcji informacyjnych.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA

Błąd wykonania 2505 – wyrażenie ma nieprawidłową wartość
Przejrzałam dokładnie internet, przepytałam AI i wygląda na to, że jest to bardzo nietypowy błąd i właściwie nic o nim nie wiadomo.
U mnie wystąpił w takiej banalnie prostej procedurze
|
Private Sub PolecenieSzukaj_Click() DoCmd.SearchForRecord acDataForm, „SpisKsiazek”, acGoto,”[autor] like '” & „*aga*” & „'” End Sub |
Podpowiedzi do wartości tego argumentu wyglądają tak:

Formularz otwarty, aktywny, bez blokad. Podobny efekt występuje w przypadku innych wartości parametru 3, prawidłowo działa tylko przy użyciu acFirst i acLast, acNext, acPreview. Sprawdzałam to przy różnych konfiguracjach. Jedyną satysfakcjonująca i logiczną odpowiedź otrzymałam od ChatGPT: w podpowiedziach jes t błąd. Odnoszą się one bardziej do możliwości acRecord, ale w połączeniu z SearchForRecord – nie pasują i wywołują ten błąd.
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA

Błąd wykonania 94 – nieprawidłowe użycie Null
Błąd ten pojawia się w sytuacji, gdy następuje odwołanie do wartości Null w miejscu (np. jako argument funkcji), gdzie wartość jest wymagana.
Najlepszym zabezpieczeniem kodu przed tym błędem jest zastosowanie funkcji nz.
Null to nie zero
Przykładowy kod może wyglądać tak:
|
Private Sub PolecenieSzukaj_Click() Dim JData As Date JData = Nz(Me.TOD, Date) '(…) End Sub |
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA
Błąd wykonania 76 – Path not found
Błąd ten pojawia się w sytuacji, gdy następuje odwołanie do ścieżki na dysku, która nie istnieje.
Najlepszym zabezpieczeniem kodu przed tym błędem jest tu po prostu wcześniejsze sprawdzenie, czy ścieżka istnieje.
Przykładowy kod może wyglądać tak:
|
Public Function CzyKatalog(Jaki_Adres as string) If Dir(Jaki_Adres, vbDirectory) = „” Then CzyKatalog=False Else CzyKatalog=True End If` End Sub |
Inne błędy wykonania VBA (Run-time) są tu:
Błędy wykonania VBA