
No.1ベストアンサー
- 回答日時:
DAOを使用した方法ですが...
適当なフォームにコンボボックスとコマンドボタンを配置して下さい
下記コードによって、掲題の事は可能だと思われます
アレンジすれば、リンクテーブルの作成とかも可能です
※参照設定にて「Micorosoft DAO *.* Object Library」をチェックして下さい
'-------------------------------------------------
Private Sub Form_Open(Cancel As Integer)
Dim Dbs As DAO.Database
Dim Tdf As DAO.TableDef
Dim strTbls As String
Set Dbs = CurrentDb
'リンクテーブル一覧作成
strTbls = ""
For Each Tdf In Dbs.TableDefs
If Left(Tdf.Name, 4) <> "MSys" And Tdf.Connect <> "" Then
strTbls = strTbls & Tdf.Name & ";"
End If
Next
Set Dbs = Nothing
'コンボボックスにリンクテーブルを設定
Me.cmbTableName.RowSourceType = "Value List"
Me.cmbTableName.RowSource = strTbls
End Sub
Private Sub cmdInportTable_Click()
Dim Dbs As DAO.Database
Dim Tdf As DAO.TableDef
Dim strSrcDbs As String
Dim strSrcTbl As String
Dim strCpyTbl As String
'テーブルが指定されなければ抜ける
If IsNull(Me.cmbTableName.Value) = True Then Exit Sub
'対象テーブル設定
Set Dbs = CurrentDb
Set Tdf = Dbs.TableDefs(Me.cmbTableName.Value)
'リンク先DB、リンクテーブル、インポート後の名前指定
strSrcDbs = Mid(Tdf.Connect, 11)
strSrcTbl = Tdf.SourceTableName
strCpyTbl = Tdf.SourceTableName
'対象リンクテーブルをインポート
Dbs.TableDefs.Refresh
DoCmd.TransferDatabase _
acImport, _
"Microsoft Access", _
strSrcDbs, _
acTable, _
strSrcTbl, _
strCpyTbl
'完了メッセージ
MsgBox "[" & Tdf.Name & "] をインポートしました"
Set Tdf = Nothing
Set Dbs = Nothing
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Accessで別mdbのテーブルをコピー
その他(プログラミング・Web制作)
-
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
-
4
ACCESS アクセスで他のデータベースからのデータインポート
Access(アクセス)
-
5
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
6
アクセスのフォームに入力する文字に制限をかけたい
Access(アクセス)
-
7
Accessでリンクテーブルからローカルテーブルに起動するたびに更新したい
Access(アクセス)
-
8
ACCESS VBA でのエラー解決の根拠がわかりません エラー「イベントプロパティに指定した式・・
Access(アクセス)
-
9
ラベル、テキストコントロールの回転について
Access(アクセス)
-
10
ACCESSでコントロールソースの変更
Access(アクセス)
-
11
Accessにてリンクテーブルの削除、最適化、リンクの張り直しを行いたいのです。
Access(アクセス)
-
12
2つ目のレコードの値を取得するには?
Access(アクセス)
-
13
ADOのCursorLocationプロパティ
Visual Basic(VBA)
-
14
角丸四角形を描きたい
Excel(エクセル)
-
15
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
16
アクセスからエクセルのシートを追加して、名前をつける方法
Excel(エクセル)
-
17
Accessの構成をコピーしたい
Access(アクセス)
-
18
Access サブフォームでの選択行の取得
その他(データベース)
-
19
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
20
Access上で作成したレポートのExcelへのエクスポート
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
Countと受付状態の表示に...
-
下記の事を行うSQLがわかりませ...
-
パススルークエリをテーブル作...
-
データベースで変更の多いテー...
-
テーブル作成クエリで主キーを設定
-
2つのmdb内にある同名テーブル...
-
Accessで、複数のテーブルで随...
-
Accessでのテーブルのコピー
-
ACCESS97のテーブルサイズについて
-
ACCESSに同時アクセス(編集)を...
-
Accessデータベースで測定デー...
-
SQLで条件指定結合をしたいがNU...
-
Accessでテーブルからテーブル...
-
時間の足し算
-
ACCESSのSQLで数値型に変換する...
-
Excel 2019 のピボットテーブル...
-
「直需」の意味を教えてください
-
ACCESS検索★ある文字を複数のフ...
-
Accessで、固定アルファベット+...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
下記の事を行うSQLがわかりませ...
-
Countと受付状態の表示に...
-
Accessレコードの追加や変更が...
-
Accessの追加クエリで既存のテ...
-
Accessでテーブルからテーブル...
-
Accessでvlookupみたいなことは...
-
2つのテーブルを比較して一致し...
-
Accessクエリでの、LIKE条件
-
access テーブル内のレコード...
-
テーブルを、たとえそれが存在...
-
ACCESSのSQLで数値型に変換する...
-
デザインビューで、連結式 を...
-
ACCESSに同時アクセス(編集)を...
-
2つのテーブルAとBをマージ...
-
accessで指定期間の曜日カウン...
-
データベースで変更の多いテー...
-
INSERT時にデータ登録とmaxの発...
-
パススルークエリをテーブル作...
-
SQLで条件指定結合をしたいがNU...
おすすめ情報