Hitta alla frågor som använder en viss tabell
Vi har precis slutfört en massiv 39 databaskonvertering till SQL Server för en klient i Tennessee vilket var ganska utmanande, vi var tvungna att inte bara utöka alla tabeller utan byta systemet från att importera/exportera mellan databaser till att använda länkade tabeller istället. Ibland behövde vi hitta vilka frågor som använde en tabell, så vi använde följande kod för att snabbt hitta en tabell i alla frågorna:
Public Function SearchQueries(strTableName As String)
Dim qdf As DAO.QueryDef
Dim strSQL As String
On Error GoTo ErrorHandler
För varje qdf i CurrentDb.QueryDefs
Application.Echo True, qdf.Name
strSQL =qdf.SQL
Om InStr(1, strSQL, strTableName)> 0 Då
Felsök. Skriv ut qdf.Name
End If
Next qdf
Ställ in qdf =Ingenting
MsgBox “Sökning slutförd”
Avsluta funktion
ErrorHandler:
If Err.Number =3258 Then
strSQL =“”
Resume
End If
End Function
Låt oss säga vi måste hitta var tblCustomers används i frågesamlingen, vi skulle trycka på Ctrl-G för att gå till fönstret Direkt och skriva:
?SearchQueries("tblCustomers")
Systemet kommer att returnera alla frågor där de används i samma omedelbara fönster:
qryCustomerList
qryOrdersByCustomer
qryOrderHistory
Jag hoppas att du tycker att den här koden är användbar! Låt mig veta i kommentarerna, alla som lämnar en kommentar kommer att ingå i ett presentkort på $25 på Amazon.com, skynda, tävlingen avslutas 6/10/16!