Access プロジェクトの接続をプログラムで変更する方法
高度な機能: 高度なコーディング、相互運用性、マルチユーザー スキルが必要です。
この記事は、Microsoft Access プロジェクト (.adp) にのみ適用されます。
概要
この記事では、プログラムによって Microsoft Access プロジェクト (ADP) ファイルの接続を変更する方法について説明します。
詳細
ADP の接続を変更する最も簡単な方法は、手動で行うことです。 Access 2002 または Access 2003: の [ファイル] メニューの [接続] をクリックすると、現在のプロジェクトの接続プロパティにアクセスできます。 表示されるダイアログ ボックスには、サーバー名とセキュリティ モードなどのプロパティを変更するオプションが表示されます。
メモAccess 2007 で、次の手順に従って、[データ リンクのプロパティ] ダイアログ ボックスの [接続] タブを開きます。
- [Microsoft Office] ボタンをクリックし、[アクセス オプション] をクリックします。
- [ カスタマイズ ] タブの [ コマンド の選択] ボックスの一覧で [すべての コマンド ] をクリックします。
- 左側のウィンドウで [ 接続 ] をクリックし、[ 追加] をクリックし、[OK] をクリック します。
- クイック アクセス ツール バーの [接続] をクリックします。
ただし、場合によっては、プロセスを自動化することが必要になる場合があります。 ユーザーがアプリケーションの特定のセクションに対して別の SQL サーバーに接続することを望む場合や、起動時に接続プロセスを制御して、エラーを探してそれに応じて処理できるようにすることもできます。たとえば、別のサーバーにルーティングします。
次の手順では、Access オブジェクト モデルを使用して ADP の既存の接続を変更する方法を示す関数を使用します。 関数は成功した場合は True を、成功しなかった場合は False を返します。
Access を開始し、サンプルの Access プロジェクト NorthwindCS.adp を開きます。
Access 2002 または Access 2003 で、[データベース] ウィンドウの [オブジェクト] の下にある [モジュール] をクリックし、[新規] をクリックして新しいモジュールを開きます。
Access 2007 で、[作成] タブの [その他] グループの [マクロ] の下にある下矢印をクリックし、[モジュール] をクリックします。
次のコードを新しいモジュールに追加し、モジュールを保存します。
Function ChangeADPConnection(strServerName As String, strDBName As _
String, Optional strUN As String, Optional strPW As String) As Boolean
Dim strConnect As String
On Error GoTo EH:
Application.CurrentProject.CloseConnection
'The Provider, Data Source, and Initial Catalog arguments are required.
strConnect = "Provider=SQLOLEDB.1" & _
";Data Source=" & strServerName & _
";Initial Catalog=" & strDBName
If strUN <> "" Then
strConnect = strConnect & ";user id=" & strUN
If strPW <> "" Then
strConnect = strConnect & ";password=" & strPW
End If
Else 'Try to use integrated security if no username is supplied.
strConnect = strConnect & ";integrated security=SSPI"
End If
Application.CurrentProject.OpenConnection strConnect
ChangeADPConnection = True
Exit Function
EH:
MsgBox Err.Number & ": " & Err.Description, vbCritical, "Connection Error"
ChangeADPConnection = False
End Function
Access 2002 または Access 2003 で、[データベース] ウィンドウの [オブジェクト] の下にある [フォーム] をクリックし、[新規] をクリックし、[OK] をクリックしてデザイン ビューで新しいフォームを開きます。
Access 2007 で、[作成] タブの [フォーム] をクリックします。
フォームにコマンド ボタンを追加します。
コマンド ボタンの OnClick プロパティを次のイベント プロシージャに設定します。
Dim bCheckConnection As Boolean
'You must specify the correct parameters for your following server.
'username and password parameters are optional.
bCheckConnection=ChangeADPConnection("ServerName","DBName","UserName","PW")
MsgBox bCheckConnection
Visual Basic 環境を閉じてフォームに戻ります。
フォームを保存し、フォームをフォーム ビューに切り替えます。
コマンド ボタンをクリックして、基になるコードを実行します。
手順 6 で接続の正しいパラメーターを指定した場合は、True というメッセージ ボックスが表示されます。
または
正しいパラメーターを指定しなかった場合は、エラー メッセージが表示されます。 エラー メッセージに 対して [OK] を クリックすると、False と表示されるメッセージ ボックスが表示されます。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示