|
Access - Exklusives Öffnen von Datenbanken verhindern
Exklusives Öffnen von Datenbanken verhindern Beim gemeinsamen Zugriff auf Datenbanken im Netzwerk wird Anwendern immer wieder der Zugriff auf die eine oder andere Datenbank verweigert, weil ein anderer Anwender diese Datenbank bereits "Exklusiv" geöffnet hat. Selbst der Administrator steht dann vor verschlossener Tür und kann keine Änderungen vornehmen. Um zu verhindern, dass Anwender eine Datenbank exklusiv öffnen, setzt man die Kombination aus einer VBA-Funktion und einem "AutoExec"-Makro ein. Arbeitschritte: In der betreffenden Datenbank ein neues Modul "modExklusiv" anlegen und die folgende Funktion eingeben:
Function ExklusivPruefen()
Dim db As DATABASE
Dim strDBName As String
Dim FileNum As Integer
ExklusivPruefen = False
Set db = CurrentDb()
strDBName = db.Name
FileNum = FreeFile
On Error Resume Next
Open strDBName For Input _
Access Read Shared As #FileNum
If Err = 70 Then 'Zugriff verweigert
MsgBox "Diese Datenbank kann nicht exklusiv geöffnet werden"
ExklusivPruefen = True
End If
Close #FileNum
End Function
Anschließend ein Makro "AutoExec" erstellen, über "Ansicht - Bedingungen" die Spalte "Bedingungen" anzeigen lassen und in dieser Spalte folgendes eingeben: ExklusivPruefen()= True Wenn bereits ein Makro "AutoExec" vorhanden ist, fügt man ganz am Anfang eine neue Zeile hinzu und gibt die notwendigen Anweisungen dort ein. Die Einstellung "Aktion" setzt man auf "AusführenBefehl". Als Parameter für die Aktion "Beenden" angeben. Wenn in Zukunft ein Anwender versucht, diese Datenbank exklusiv zu öffnen, wird automatisch das Makro "AutoExec" ausgeführt. Von hier aus erfolgt ein Aufruf der Funktion "ExklusivPruefen()". Liefert diese als Ergebnis "True/Wahr", wird die Aktion "AusführenMenübefehl" oder "AusführenBefehl" ausgeführt und Access damit beendet. |