- 締切済み
SQLSERVERデータをエクセルデータに読み込む方法を教えてください
下記のコードにてエクセルでデータベースに接続しようとするのですが、どうしてもうまくいきません。開きたいデータベースは”sekisan.mdf”という名前です。現在はローカルPCにて接続したいとかんがえております。 何かおかしな点があったらご教授願います。それから、逆にエクセルデータをSQLSERVERの既存のデータに書き出すことって可能でしょうか? cn.ConnectionString = "Provider=SQLOLEDB;Data Source=(local);" & _ "Initial Catalog=sekisan;Integrated Security=SSPI;"
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- chibita_papa
- ベストアンサー率60% (127/209)
こんな感じで 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 とする方法があります
補足
有り難うございます。 誠に申し訳ないのですが、補足させてください。 chibita_papa様のコードで大丈夫かと思うのですが、SQLSERVERをwindows認証で行っていて、ユーザーIDとパスワードを割り振っていない場合、 conn.Open connstr, ユーザーID,パスワード のコーディングはどうなるのでしょうか? というのもただ単に”, ユーザーID,パスワード”部を削除するだけでは、認証どころかSQLSERVERが存在しない旨を通知されてしまいます。この補足は、初歩的なことかもしれませんが、どうか宜しくお願い致します。