Tipp 1.15 - Ist MDE

Wie kann ich ermitteln, ob die angegebene Datenbank eine MDE-Datei ist?

Mit dieser Funktion können Sie ermitteln, ob die angegebene Datenbank eine MDE-Datei ist. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.

Beispiel:

Public Function A2XIsDBMde( _
                Optional psDBNamePath _
                As String = vbNullString) _
                As Boolean
  '// =====================================================
  '// Methode   | Ermittelt, ob die angegebene bzw.
  '//           | die aktuelle DB eine MDE-Datei ist
  '// -----------------------------------------------------
  '// Parameter | psDBNamePath - Optional, Name und Pfad
  '//           | der zu überprüfenden Datenbank
  '// -----------------------------------------------------
  '// Rückgabe  | Boolean - True = MDE, False = MDA/MDB
  '// -----------------------------------------------------
  '// Erstellt  | Manuela Kulpa
  '//           | EDV Innovation & Consulting - Dormagen
  '// =====================================================
 
  Dim sMDE As String
  ' Verweis auf DAO 3.6 Object Library muss gesetzt sein!
  Dim dbs As DAO.Database
 
  ' Datenbank öffnen
  If Len(psDBNamePath) > 0 Then
    Set dbs = DAO.DBEngine.Workspaces(0).OpenDatabase( _
                  psDBNamePath)
  Else
    Set dbs = CurrentDb
  End If
 
  On Error Resume Next
  ' Eigenschaft vorhanden
  sMDE = dbs.Properties("MDE")
  If Err = 0 And sMDE = "T" Then
    ' wenn ja, haben wir hier ein MDE
    A2XIsDBMde = True
  Else
    ' wenn nein (also Fehler), haben wir
    ' keine MDE
    A2XIsDBMde = False
  End If
 
  ' Speicher freigeben
  If Not dbs Is Nothing Then dbs.Close: Set dbs = Nothing
 
End Function