Access
 sql >> Baza danych >  >> RDS >> Access

Sprawdź źródło kontroli wszystkich kontroli w projekcie MS Access

Sprawdź źródło kontroli wszystkich kontrolek w projekcie MS Access

Szczęśliwego Nowego Roku!

Ostatnio pracowałem nad projektem, w którym wdrażałem spawnowanie formularzy, aby mój klient mógł zobaczyć co najmniej dwa różne rekordy używające dwóch identycznych formularzy, jeden z rzeczywistych formularzy, a drugi ze spawnowaną wersją samego siebie (temat, który omawiane na moich spotkaniach dotyczących programu SQL Server z programem Access, kliknij, aby dołączyć do listy ogłoszeń!). Ponieważ poprzedni programista nie używał tworzenia formularzy, musiałem przeszukać wszystkie instancje w źródle kontrolnym wszystkich formularzy, aby zidentyfikować odniesienia do oryginalnego formularza i zastąpić go TempVars.

Projekt ma dziesiątki formularzy i tysiące kontrolek, więc stworzyłem następujący kod, aby przeskanować wszystkie źródła rekordów formularzy w poszukiwaniu naruszającego źródła wiersza i źródła kontroli wszystkich kontrolek w formularzu.

Public Sub ScanForms()
On Error Resume Next
Dim obj As AccessObject, dbs As Object
Dim ctrl As Control
Dim strRowsource As String

Ustaw dbs =Application.CurrentProject

Dla każdego obiektu In dbs.AllForms
'Debug.Print “Praca nad:” &nazwa obiektu
DoCmd.OpenForm nazwa obiektu, acDesign
strRowsource =Forms(nazwa.obiektu).RecordSource
If Err.Number Then
strRowsource =vbNullString
End If
If Len(strRowsource) Then
If InStr(1, strRowsource, “frmPatientProcessing”)> 0 Then
Debug.Print „Form:” i nazwa.obiektu
Zakończ jeśli
Zakończ jeśli
Dla każdego ctrl w Forms(nazwa.obiektu).Kontrole
W przypadku błędu Wznów Next
strRowsource =ctrl.ControlSource
If Err.Number Then
strRowsource =vbNullString
End If
W przypadku błędu Przejdź do 0
If Len(strRowsource) Then
If InStr(1, strRowsource, “frmPatientProcessing”)> 0 Wtedy
Debug.Print “Formularz:” &Nazwa obiektu &” Kontrola:” &ctrl.Nazwa
Zakończ Jeżeli
Zakończ, jeśli
Następny ctrl
DoKmd.Zamknij formularz, nazwa.obiektu
Następny obiekt
Zakończ podtekst


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wprowadzenie do zapytań specjalnych

  2. Parametry ciągu połączenia dla zapisanych specyfikacji

  3. Jak utworzyć pole obliczeniowe w programie Access

  4. Debugowanie procedur prywatnych

  5. Jak utworzyć pustą bazę danych w programie Access 2016