データベースに接続してデータを取得して正常に動作するVBAマクロがあります。しかし、別の部署から別の人が自分のコンピュータからファイルを実行しようとしたとき、彼はエラーを取得します。SQL ServerへのVBA接続が他のコンピュータから拒否されました
マイVBAの接続文字列は以下の通りです:
Sub exportLens()
Dim cnn As New ADODB.Connection
Dim rst As New ADODB.Recordset
Dim ConnectionString As String
Dim StrQuery As String
Sheets("data").Range("A2:C100000").Clear
ConnectionString = "Provider=SQLOLEDB.1;Password=xxxxx;Persist Security Info=True;User ID=SQLxxx;Data Source=xx.xx5.xx.90,xx33;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=NasrWeb"
すべてのアイデア、なぜこれは私の友人のコンピュータからは機能しませんか?
ありがとうございました。
がブロックされていますか? – SteveB
可能であれば、Windows認証を使用してください。パスワードとユーザーIDをVBAコードの接続文字列に格納しないでください。保護されたVBAコードは安全ではありません。 –
DataSourceはxxx.xxx.xxx.xxx:xxx(セミコロン)でなく、xxx.xxx.xxx.xxx、xxxx(カンマ) – Jules