すべてのテーブルの名前を配列内の外部データベースに格納するプロシージャを作成しました。その理由は、最終的に、どのテーブルを再リンクする必要があるかを判断するための参照点としてこれを使用するためです。
以下のコードは、合計13 個のテーブルを返します。
For Each tb In db.TableDefs
If Left(tb.Name, 4) <> "MSys" Then
'Store these accepted table names in an array
astrTableNames(intArryPosition) = tb.Name
intArryPosition = intArryPosition + 1
End If
Next tb
それらの名前を配列に格納します。配列を印刷したときの結果のリストを次に示します。
1: DispenseStaging
2: DispenseSummary_All
3: DrugBrand
4: NDC
5: Programs
6: StateCodes
7: StoreInfo
8: tblCompany
9: tblGetProgramDispense
10: Users
11: Users1
12: Version
13: Zipcodes
ここに問題があります-データベースを開くと、テーブルが4つしかありません。リンクなどへの参照はありません。
では、これらのテーブルは実際にはどこから来ているのでしょうか? これは、それらがかつてそこにあったがその後削除されたが、参照がまだそこにあるということですか?
ありがとう
PSこれは、配列を印刷するために使用している手順です。
'Procedure to print the contents of a string array
Public Sub PrintArrayContents(ArryStrg() As String)
Dim i As Integer
For i = LBound(ArryStrg) To UBound(ArryStrg)
Debug.Print i & ": "; ArryStrg(i)
Next i
End Sub