【Access】VBAを使わずにマクロでリンクテーブルの変更(変換)
公開日:
:
最終更新日:2015/01/12
Microsoft Office Access, Access2007, マクロ, リンクテーブル, リンクテーブル変換
以前にVBAを使ってリンクテーブルの変換をしましたが、
今回はVBAを使わずにマクロでリンクテーブルの変換。
今回も結局、VBAでのリンク変換と同じく変換というよりは、削除→再作成という感じ。
どうしてもVBAは使いたくない!という時ようのメモ。。
ちなみに今回はAccess2007で実施しましたが
2010、2013でも同様にできると思います。
1.Accessの「作成」→「マクロ」を選択
2.「すべてのアクションを表示」を選択
※このボタンを押さないと、次に使う「オブジェクトの削除」、「データベース変換」が表示されない。
3.「アクション」に「オブジェクトの削除」を選択し、
「アクションの引数」に変更するリンクテーブルを指定
4.「アクション」に「データベース変換」を選択し
「アクションの引数」を下記のように設定
=======================================
(1)変換の種類:リンク
(2)データベースの種類:ODBC データベース
(3)データベース名:ODBC;DRIVER=SQL Server;SERVER=【サーバー名】;DATABASE=【データベース名】;UID=【ユーザ名】;PWD=【パスワード】
(4)オブジェクトの種類:テーブル
(5)オブジェクト名:Customer.顧客(データベース上のテーブル名)
(6)変換先名:Customer_顧客(Access上のリンクテーブル名)
(7)テーブル構造のみ変換:いいえ
=======================================
'※データベース名(ODBC接続文字列)のコピペ用 'Windows認証用 ODBC;DRIVER=SQL Server;SERVER=【サーバー名】;DATABASE=【データベース名】;Trusted_Connection=Yes 'SQLServer認証用 ODBC;DRIVER=SQL Server;SERVER=【サーバー名】;DATABASE=【データベース名】;UID=【ユーザ名】;PWD=【パスワード】
5.変更したいリンクテーブルの数だけ
項番3,4を繰り返しセット
6.マクロを保存して実行し、リンクテーブルが変更されていれば、OK。
以上、終了。
結論からすると、めんどくさい。
マクロ上で変数も使えるから、ローカルテーブルにリンクテーブル変更一覧を作成して、切替フォームみたいなものを作成して使えば、ちょっとはマシかなぁ。
それでもVBAで出来ちゃいますけど。。
Adsense
関連記事
-
-
【PowerPoint】表や図形、画像オブジェクトの位置をピッタリ合わせる方法
パワーポイントで、図形や画像等のオブジェクトの細かい位置調整は、 完璧主義のこだわり派には非常にイ
-
-
【Excel】関数を一括でメモ帳などにコピーする方法
セルに入力されている関数一つのみコピーしたい場合、対象セルを選択して、数式バーか
-
-
【Outlook】Gmailを使う時のOutlookの設定方法
Gmailアカウント側の設定を行った上で、Outlookの設定を行います。 Gmailアカウン
-
-
【Excel】複数のエクセル(ブック)のシートを一つのブックに結合するVBA
複数のエクセルのシートを一つのエクセルにまとめるVBAを作ってみた。 ソースコードは使い方の下
-
-
【Access2007】ODBCを使ってSQL Server 2012に接続
Windows7のAccess2007をデータソース(ODBC)を使って、SQL Server 20
-
-
【Excel】エクセルを起動(実行)しても、何も表示されない。
仕事の共有で使用しているエクセルを開くと、Excelの枠だけ表示されて何も表示されない。 壊れ
-
-
【Access】循環参照エラーの回避方法
Accessでクエリを実行しようとすると クエリ定義の SELECT で指定されている別名
-
-
【Excel】エクセル。シートの名前を変更しようとしたらエラーポップアップ
エクセルでシート名を変更しようとしたときに… シートの名前をほかのシート、Visual B
-
-
【Microsoft Office】Access 2007でMDBファイルが開けない
こんばんわ。今日、ハマッたことを書きたいと思います。 会社の内線がなり「共有フォルダ上のAcces
-
-
【Excel】VBAでセルの書き込みを5倍高速化する方法
Excel VBAで While文やFOR文を使用してループさせ、行、列をカウントアップして、 大





