回答編集履歴

2

説明追記

2022/02/27 02:38

投稿

hatena19
hatena19

スコア33740

test CHANGED
@@ -2,5 +2,28 @@
2
2
 
3
3
  [【データベース分割ツール】を使ってテーブルとその他のファイルに分割 | Access 2013 | 初心者のためのOffice講座](https://hamachan.info/win8/access/bunkatu.html)
4
4
 
5
- そうではなくて、すでに外部データベースにあるテーブルとリンクさせたいのなら、「削除→ポート」の処理をマクロかVBAで作成することになります。
5
+ そうではなくて、すでに外部データベースにあるテーブルとリンクさせたいのなら、「ローカルテーブル削除→テーブルのリ」の処理をマクロかVBAで作成することになります。
6
6
  ただ、そのような操作が頻繁に発生するなら、データベース設計が間違っていると思います。
7
+
8
+ ---
9
+ VBAでする場合の処理を書いてみました。ご参考に。
10
+
11
+ ```vba
12
+ Public Function LocalTableToLinkTable(TableName As String, DBFilePath As String) As Boolean
13
+ On Error Resume Next
14
+ DoCmd.Rename TableName, acTable, TableName & "_Local"
15
+ If Err.Number <> 0 Then
16
+ MsgBox "ローカルテーブルが存在しないか、使用中です。"
17
+ Exit Function
18
+ End If
19
+
20
+ On Error GoTo ER
21
+ DoCmd.TransferDatabase acLink, "Microsoft Access", DBFilePath, acTable, TableName, TableName
22
+ DoCmd.DeleteObject acTable, TableName & "_Local"
23
+ LocalTableToLinkTable = True
24
+ Exit Function
25
+ ER:
26
+ MsgBox "リンクに失敗しました。"
27
+ End Function
28
+ ```
29
+

1

説明追記

2022/02/27 00:32

投稿

hatena19
hatena19

スコア33740

test CHANGED
@@ -1,3 +1,6 @@
1
1
  「データベース分割ウィザード」でローカルテーブルをリンクテーブルに変換できます。
2
2
 
3
3
  [【データベース分割ツール】を使ってテーブルとその他のファイルに分割 | Access 2013 | 初心者のためのOffice講座](https://hamachan.info/win8/access/bunkatu.html)
4
+
5
+ そうではなくて、すでに外部データベースにあるテーブルとリンクさせたいのなら、「削除→インポート」の処理をマクロかVBAで作成することになります。
6
+ ただ、そのような操作が頻繁に発生するなら、データベース設計が間違っていると思います。