Office: (Office 2013) MSysObjects

Helfe beim Thema MSysObjects in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo Forum, ich möchte ein Formular erstellen, das mir alle in der Datenbank enthaltenen Tabellen und die jeweilige Anzahl Datensätze auflistet.... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Michael O., 1. August 2017.

  1. MSysObjects


    Hallo Forum,
    ich möchte ein Formular erstellen, das mir alle in der Datenbank enthaltenen Tabellen und die jeweilige Anzahl Datensätze auflistet. Hintergrund: über das Formular möchte ich anschließend Datensätze aus einer Test-DB löschen.

    Ich habe also eine Abfrage auf die Tabelle MSysObjects durchgeführt und die Tabellen im Endlosformular aufgelistet. Fehlt noch die Information, wie viele Datensätze die jeweilige Tabelle hat. Der Splate "Name" in MSysObjects habe ich den Alias "Tab_Name" verpasst und dann folgende Unterabfrage zur Ermittlung der Anzahl Datensätze in der jeweiligen Tabelle erstellt:
    anz_rec: (select count(*) form [Tab_Name])
    Das führt aber zu einem Fehler, die Tabelle "Tab_Name" wird nicht gefunden. Aber wie ist die korrekte Syntax.

    PS: Hilfsweise habe ich eine Prozedur erstellt, die das Endlosformular durchläuft und die Anzahl der Datensätze pro Tabelle per VBA ermittelt. Um dann festzustellen, dass ich im Endlosformular nicht die Werte pro Zeile ändern kann, sondern immer den Wert für alle Zeilen setze. Also auch keine Lösung.

    Herzlichen Dank im Voraus für Hinweise für eine der beiden Varianten!

    Viele Grüße
    Michael

    :)
     
    Michael O., 1. August 2017
    #1
  2. Ist das nur hier im Post ein Schreibfehler? --> (select count(*) form [Tab_Name])
     
    Edgar Basler, 2. August 2017
    #2
  3. Hallo,
    Alias stehen in der aktuellen Abfrage nicht zur Verfügung. Auch kann in einer Unterabfrage keine Variable (Feld) für eine Tabelle angegeben werden.

    Versuche es so: Code:
     
    Steffen0815, 2. August 2017
    #3
  4. MSysObjects

    Alternativ geht es auch ohne Zählen via SQL:

    DBEngine(0)(0).TableDefs([Tab_Name]).RecordCount

    Eventuell in eine Funktion auslagern.
     
    markusxy, 2. August 2017
    #4
  5. So was löst man mit einer Funktion, die in die Abfrage eingebunden wird.
    Code:
    In der Abfrage wird dann die Funktion eingebunden.

    Select Name, getTableCount(Name)AS RecordCount from MSysObjects where ...
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 2. August 2017
    #5
  6. Genau...
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Michael O., 2. August 2017
    #6
  7. Danke, das ist exakt das, was ich gesucht habe!
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Michael O., 2. August 2017
    #7
Thema:

MSysObjects

Die Seite wird geladen...
  1. MSysObjects - Similar Threads - MSysObjects

  2. MSysObjects Bereinigen

    in Microsoft Access Hilfe
    MSysObjects Bereinigen: hallo zusammen, ich habe festgestellt, daß unter der systemtabelle MSysObjects und auch teilweise den anderen systemtabellen teilweise dubiose einträge enthalten sind. da tauchen zum beispiel...
  3. MSysObjects Type-Auflistung

    in Microsoft Access Hilfe
    MSysObjects Type-Auflistung: Hallo zusammen, ich bin auf der Suche nach einer Auflistung (oder einem Link dazu) der möglichen Werte in der Spalte TYPE in der Tabelle MSysObjects. Da Type als zu allgemeiner Begriff...
  4. Leseberechtigung auf MSysObjects

    in Microsoft Access Hilfe
    Leseberechtigung auf MSysObjects: Tag, ich möchte die MSysObjects in einer Accessdatenbank lesen (von Excel aus, Grund: Ich möchte wissen, welche Tabellen in der Datenbank sind, Access ist auf dem Zielrechner nicht installiert):...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden