| | |
|
• I.1. Access - baza danych cz. 1 •
- 1.1 Jak pobrać ścieżkę folderu bazy danych ?
- 1.2 Jak pobrać nazwę pliku bazy danych ?
- 1.3 Jak otworzyć drugą bazę danych ?
- 1.4 Jak pokazać (ukryć) okno bazy danych ?
- 1.5 Jak sprawdzić, czy baza danych otwarta jest na wyłączność ?
- 1.6 Jak zmienić ("usunąć") pojawiającą się podczas startu bitmapę Accessa ?
- 1.7 Zniknęły mi niektóre obiekty w oknie bazy => Opcje bazy danych (SetOption) ?
- 1.8 Jak zmienić ikonę i tytuł okna Accessa, jak zabezpieczyć bazę przed klawiszem SHIFT => Opcje startowe bazy (Autostart) ?
- 1.9 Zabezpieczyłem bazę danych (plik *.mdb) za pomocą opcji startowych i nie mogę wejść w tryb projektowania. Co robić ?
- 1.10 Jak otworzyć bazę zabezpieczoną hasłem ?
- 1.11 Jak uniemożliwić otwarcie drugiej instancji bazy ?
- 1.12 Jak sprawdzić, czy jest otwarta druga instancja MS Access ?
- 1.13 Jak zapamiętać dane konfiguracyjne by zawsze były dostępne ?
- 1.14 Jak wylistować wszystkie utworzone obiekty w bazie ?
- 1.15 Jak odzyskać uszkodzona bazę, (plik bazy istniejący przed ostatnią defragmentacją) ?
| |
| | |
|
| | |
|
1.1 Jak pobrać ścieżkę folderu bazy danych ?
Public Function zbPathDB() As String
Dim sPath As String
sPath = CurrentDb.Name
zbPathDB = Left$(sPath, Len(sPath) - Len(Dir$(sPath)))
End Function
ΔΔΔ | |
| | |
 |
| | |
|
1.2 Jak pobrać nazwę pliku bazy danych ?
Public Function zbNameDB_1() As String
zbNameDB_1 = Dir$(CurrentDb.Name)
End Function

' można również szukać od tyłu znaku \
Public Function zbNameDB_2() As String
Dim i As Long
For i = Len(CurrentDb.Name) To 1 Step -1
If InStr(i, CurrentDb.Name, "\") > 0 Then
zbNameDB_2 = Left$(CurrentDb.Name, i - 1)
Exit For
End If
Next
End Function
ΔΔΔ | |
| | |
 |
| | |
|
1.3 Jak otworzyć drugą bazę ?
' Jeżeli nazwa katalogu zawiera spację, to ścieżkę należy ująć w cudzysłów.
' Jeżeli baza jest zabezpieczona hasłem, pojawi się okno dialogowe do wpisania hasła.
Public Sub zbOpenDB(sPathDb As String)
If Len(Dir(sPathDb)) > 0 Then
Call Shell(SysCmd(acSysCmdAccessDir) & _
"MsAccess.exe" & " """ & _
sPathDb & """", vbMaximizedFocus)
Else
MsgBox "Baza danych:" & vbNewLine & _
sPathDb & vbNewLine & "nie istnieje !"
End If
End Sub
ΔΔΔ | |
| | |
 |
| | |
|
1.4 Jak pokazać (ukryć) okno bazy danych ?
' Przykładowy formularz Me.Name musi mieć ustawiony atrybut widoczny na Tak !
Public Sub zbShowDb(fVisible As Boolean)
If fVisible = True Then
DoCmd.SelectObject acForm, Me.Name, True
Else
DoCmd.SelectObject acForm, Me.Name, True
DoCmd.RunCommand acCmdWindowHide
End If
End Sub
ΔΔΔ | |
| | |
 |
| | |
|
1.5 Jak sprawdzić, czy baza danych otwarta jest na wyłączność ?
' Metoda ta opiera się na przechwycie błędu otwarcia pliku bazy w trybie do zapisu.
Public Function zbIsOpenDbExclusive() As Boolean
Dim iFreeFile As Integer
On Error Resume Next
iFreeFile = FreeFile
Open CurrentDb.Name For Binary Access Write As #iFreeFile
If Err.Number <> 0 Then
zbIsOpenDbExclusive = True
Err.Clear
End If
On Error GoTo 0
Close #iFreeFile
End Function
ΔΔΔ | |
| | |
 |
| | |
|
1.6 Jak zmienić ("usunąć") pojawiającą się podczas startu bitmapę Accessa ?
Zmiana bitmapy: - należy utworzyć w programie graficznym swoją własną bitmapę i zapisać ją w katalogu bazy pod taką samą nazwą jak nazwa bazy danych (oczywiście z rozszerzenien *.bmp)
Usunięcie bitmapy: - należy utworzyć bitmapę o wielkości 1 x 1 piksel. Podczas ładowania Accessa będzie ona wtedy praktycznie niewidoczna.
ΔΔΔ | |
| | |