http://www.hatena.ne.jp/1075519325
Microsoft Access2002を使用しています。【test1.mdb】【test2.mdb】があるとします。、【test1.mdb】から【test2.mdb】の中に「sample」というテーブルが存在するか調べる.. - 人力検索はてな
URLはダミー。
DAO3.5を使った例です。
Public Sub SearchSample()
Dim MyDB As Database
Dim MyTB As TableDef
Set MyDB = OpenDatabase(”FullPath”)
For Each MyTB In MyDB.TableDefs
If LCase(MyTB.Name) = ”sample” Then
MsgBox ”sampleが存在します”
Exit Sub
End If
Next MyTB
MsgBox ”sampleは存在しません”
End Sub
http://www.accessclub.jp/bbs2/0031/beginter10269.html
複数のテーブルを削除する方法 --Access Club Access 初・中級者 FORUM--
このクエリを使ってテーブル一覧を取得する方法は銅でしょうか?
Access2000で確認しました。(2002持ってませんので・・・)
Option Compare Text
Public Sub TblDel(Pin As String)
On Error GoTo TblDel_Err
DoCmd.DeleteObject acTable, Pin
Exit Sub
TblDel_Err:
End Sub
Public Function ChkTbl(Pin As String) As Boolean
On Error GoTo ChkTbl_Err
Dim wId As Variant
Call TblDel(”test2_MSysObjects”)
DoCmd.TransferDatabase acLink, ”Microsoft Access”, _
”test2.mdb”, _
acTable, ”MSysObjects”, ”test2_MSysObjects”, False
wId = DLookup(”Id”, ”test2_MSysObjects”, ”Name = ””” & Pin & ””” and Type = 1”)
If IsNull(wId) Then
ChkTbl = False
Else
ChkTbl = True
End If
Exit Function
ChkTbl_Err:
ChkTbl = False
End Function
Public Sub test()
MsgBox (ChkTbl(”sampleA”))
MsgBox (ChkTbl(”sample”))
MsgBox (ChkTbl(”sampleB”))
End Sub
test2.mdbのMSysObjectsをリンクし、
テーブル名を検索します。
はてなのシステム障害により、一度終了した質問が復活しておりました。今回ご回答いただいた方申し訳ありません。
前回ご回答いただきました、Snufkinさんとあともう一方名前を忘れてしまったのですが、ポイントが振り分けられているか不安です。
もし振り分けられていなければ、お知らせ下さい。