![]() |
||
![]() |
Namen von Abfragen prⁿfenIch habe mit Access 97 eine Datenbankanwendung entwickelt, wobei verschiedene Prozeduren mit der Methode ╗CreateQueryDef½ Abfragen durchfⁿhren. Besteht die M÷glichkeit, vor einer solchen Abfrage zu prⁿfen, ob bereits eine Abfrage mit dem vorgesehenen Namen vorhanden ist? Die VBA-Funktion im Kasten unten tut dies und gibt im Fall einer Namensgleichheit den Wert ╗False½ zurⁿck. Bei einem Objekt des Typs ╗QueryDef½ handelt es sich um die gespeicherte Definition einer Abfrage. Fⁿr jede Abfrage einer Datenbank von Access 97 existiert ein solches Objekt. Diese Objekte sind in der Auflistung ╗QueryDefs½ des Datenbankobjekts zusammengefa▀t. Sobald in der Funktion ein ╗Database½-Objekt fⁿr die aktuelle Datenbank erzeugt ist, besteht die M÷glichkeit, ⁿber die ╗QueryDefs½-Auflistung dieses Objekts auf die verschiedenen ╗QueryDef½-Objekte zuzugreifen. Das geschieht in einer For-Each-Schleife. Die Funktion durchlΣuft die Liste und vergleicht die Namen mit dem zu prⁿfenden Namen. Listing ╗Abfrage½ Public Function istQueryNameEindeutig (name As String) As Boolean Dim Datenbank As Database, Query As QueryDef Set Datenbank = CurrentDb istQueryNameEindeutig = True Datenbank.QueryDefs.Refresh For Each Query In Datenbank.QueryDefs If Query.name = name Then istQueryNameEindeutig = False Next Query End Function CHIP-Code ABFRAGE |
![]() |