• 締切済み

SQLSERVERデータをエクセルデータに読み込む方法を教えてください

下記のコードにてエクセルでデータベースに接続しようとするのですが、どうしてもうまくいきません。開きたいデータベースは”sekisan.mdf”という名前です。現在はローカルPCにて接続したいとかんがえております。 何かおかしな点があったらご教授願います。それから、逆にエクセルデータをSQLSERVERの既存のデータに書き出すことって可能でしょうか? cn.ConnectionString = "Provider=SQLOLEDB;Data Source=(local);" & _ "Initial Catalog=sekisan;Integrated Security=SSPI;"

みんなの回答

回答No.1

こんな感じで sub test() const connstr = "Provider=SQLOLEDB;Data Source=(local);" & _ "Initial Catalog=sekisan;Integrated Security=SSPI;" Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim ret As Boolean conn.Open connstr, ユーザーID,パスワード rs.Open "Select * From テーブル名 Where 抽出条件 ", conn Range("A1").CopyFromRecordset rs rs.Close conn.Close Set rs = Nothing Set conn = Nothing End sub >SQLSERVERの既存のデータに書き出すことって SQL文作ってゴリゴリまわす方法 レコードセットを作製し 新規のとき rs.addnew rs.update とする方法があります

ganmo0122
質問者

補足

有り難うございます。 誠に申し訳ないのですが、補足させてください。 chibita_papa様のコードで大丈夫かと思うのですが、SQLSERVERをwindows認証で行っていて、ユーザーIDとパスワードを割り振っていない場合、 conn.Open connstr, ユーザーID,パスワード のコーディングはどうなるのでしょうか? というのもただ単に”, ユーザーID,パスワード”部を削除するだけでは、認証どころかSQLSERVERが存在しない旨を通知されてしまいます。この補足は、初歩的なことかもしれませんが、どうか宜しくお願い致します。