1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:

Wie ermittle ich ein DB-Objekt in der aktuellen DB? 

Public Function ExistObject(Objektname As String, Typ As Integer) As Boolean
'*******************************************
'Name:      ExistObject (Function)
'Purpose:   ermittelt ob ein Objekt existiert
'Author:
'Date:
'Inputs:    Objektname = Name des Objektes, Typ = ObjektTyp
'Output:
'*******************************************
On Error GoTo Err
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim ObjTyp As Integer
    ExistObject = False
    Select Case Typ
      Case 0: ObjTyp = 1      'Tabellen
      Case 1: ObjTyp = 5      'Abfragen
      Case 2: ObjTyp = -32768 'Formulare
      Case 3: ObjTyp = -32764 'Berichte
      Case 4: ObjTyp = -32766 'Makro
      Case 5: ObjTyp = -32761 'Module
      Case 6: ObjTyp = 6      'eingebundene Tabellen
      Case 7: ObjTyp = 4      'eingebundene ODBC-Tabellen
      Case 8: ObjTyp = -32756 'Datenzugriffseite
    End Select
    Set db = CurrentDb
    Set rs = db.OpenRecordset("SELECT Name, Type FROM MSysObjects " & _
                             "WHERE Name = '" & Objektname & "' " & _
                             "AND   Type = " & ObjTyp)
  If Not rs.EOF Then rs.MoveLast
    ExistObject = IIf(rs.RecordCount = 0, False, True)
    rs.Close
    Set rs = Nothing
    db.Close
    Set db = Nothing
  
Exit_Here:
    Exit Function
Err:
    Dim strErrString As String
    strErrString = "Error Information..." & vbCrLf
    strErrString = strErrString & "Error#: " & Err.Number & vbCrLf
    strErrString = strErrString & " Description: " & Err.Description & vbCrLf
    MsgBox strErrString, vbCritical + vbOKOnly, _
           "Error in Function: ExistObject"
    Resume Exit_Here
End Function

Der Funktion wird der Objektname und der -Typ übergeben.
Der Rückgabewert ist True bei Objekt vorhanden sonst False

Aufruf:

Dim x As Boolean
x = ExistObject("tbl_Test", 0)

 

Ist die Tabelle "tbl_Test" vorhanden ist x = True

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

Neueste Artikel

Problemstellung: Ab MS-Office 2010 gibt es eine 32bit und eine 64bit Variante.Übernimmt man nun eine Datenbank nach 64bit und diese enthält API-Declare Anweisungenerhlt min in der Regel diese...
1.png2.png0.png4.png4.png1.png7.png
Heute54
Gestern127
Diese Woche462
Dieser Monat1841
Total1204417

  • IP: 54.80.96.153
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

2
Online

20. September 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...