• 締切済み

vbsによるMsアクセスへの接続について

MsアクセスにADOで接続する場合、例えば、以下のようなVBスクリプトを実行した時、 Set obj_ado = CreateObject("ADODB.Connection") obj_ADO.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=test_2000.mdb;" obj_ADO.Open "Driver={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=test_2007.accdb アクセス2000(mdbファイル)への接続は問題ないのですが、アクセス2007(accdbファイル)へは、エラーとなって接続出来ません。 ドライバーの指定方法が間違っているのでしょうか?

みんなの回答

  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.1

エラーが出るならそのメッセージの内容に従うべきでは? 実行環境にAccess2007などはインストールされていて、正常に動作 していますか?

metro835
質問者

お礼

アクセス2007はインストールされており、対象のアクセスファイルを開くことは可能です。

関連するQ&A

  • Driver={Microsoft Access

    アクセス2007です。 Sub test() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim MyFile As String MyFile = "C:\test.accdb" cn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=D:\" & MyFile & ";" rs.Open "SELECT * FROM テーブル1", cn MsgBox "テーブルに接続出来ました。" rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing End Sub ********************************************************* を実行しても実行時エラーになります。 cn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=D:\" & MyFile & ";" を cn.Open "Provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source= " & MyFile に変えればうまくいきますが なぜ、"Driver={Microsoft Access Driver (*.mdb)}; DBQ=D:\"じゃダメなのでしょうか? 教えてくださいませ。

  • MSアクセスの、サーバーでの設定について

    よろしくお願いします。 マイクロソフトアクセスのデータベースを対応したサーバーにアップロードしたところ、ローカルでは動いていたのですが、サーバー上では、動かなくなりました。その時のJavascriptファイルを書きます。 var database; onload = init; onunload = dbClose; function init() { document.getElementById("txtPrefCd").onblur = function (){blur(this);} document.getElementById("txtPrefCd").onfocus = function (){focus(this);} document.getElementById("txtPrefName").onblur = function (){blur(this);} document.getElementById("txtPrefName").onfocus = function (){focus(this);} dbConnect(); dataDisp(); } //データベースに接続 function dbConnect() { database = new ActiveXObject("ADODB.Connection"); database.Open("Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/hogehoge/db/SampleDB010.mdb"); alert("データベースに接続しました。"); } //データベースを切断 function dbClose() { database.Close(); database = null; alert("データベースを切断しました。"); } function focus(obj){ obj.style.backgroundColor = "#ffff00"; } function blur(obj){ obj.style.backgroundColor = "#ffffff"; } //データ表示 function dataDisp() { var mySql = "select * from T01Prefecture order by PREF_CD"; var recordSet = database.Execute(mySql); var tempHtml=""; document.getElementById("disp").innerHTML = ""; while (!recordSet.EOF){ tempHtml = tempHtml + recordSet(0) + ":" + recordSet(1) + "<br />"; recordSet.MoveNext(); } document.getElementById("disp").innerHTML = tempHtml; recordSet.Close(); recordSet = null; /**/ } 以上です。 どうも、データベースに接続のところがうまくいきません。 Dim Conn Set Conn = Server.CreateObject("ADODB.Connection") strConnection = "DRIVER=Microsoft Access Driver(*.mdb);DBQ=" & Server.MapPath("/USERNAME/db/yourdatabase.mdb") Conn.Open(strConnection) としても、 Dim Conn Set Conn = Server.CreateObject("ADODB.Connection") Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _ Server.MapPath ("/YourUSERNAME/db/yourdatabase.mdb") & ";" Conn.Open としても、ダメでした。 どうすればよいのか分からないので、どこをどうすればよいのか、どなたかご教授願います。 よろしくお願いします。

  • ExcelVBAからAccessにアクセスする

    ExcelVBAからパスワード付きAccessにアクセスする ExcelVBAからADOでAccessに次のようにしてアクセスしています。 Dim Cnn As ADODB.Connection Set Cnn = New ADODB.Connection Cnn.ConnectionString = \"Provider=Microsoft.Jet.OLEDB.4.0;\" _ & \"Data Source=\" & mdbのフルパス Cnn.Open パスワード付きのmdbにアクセスするのはどのようにしたらよろしいでしょうか?

  • aspが動きません(IIS7、access2007の設定?)

    win2K,access2Kで作成したASPプログラムですが、そのままwinxp, access2003までは問題なく動いていました。 vista(ultimate),access2007ではエラー(HTTP500内部サーバエラー)となります。いろいろと調べましが、うまく動きません。 記述内容は以下のとおりです。 filename=Server.MapPath ("./") & "\data.mdb;" odbcConect="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & filename Set db = Server.CreateObject("ADODB.Connection") db.Open odbcConect アドバイスをよろしくお願いいたします。

  • VBSでADOを使ってaccessのテーブルに接続

    VBSでADOを使ってaccessのテーブルに接続する方法は? Sub ADO_test() Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source= " & "D:\【Access】サンプル.mdb" rs.Open "テーブル1", cn, adOpenKeyset, adLockOptimistic MsgBox "test成功です" rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing End Sub をACCESSVBAで実行すると成功しますが 全く同じコードをメモ帳に貼り付けてtest.vbsで保存し、ダブルクリックすると、 行:3 文字:11 エラー:ステートメントの末尾が不正です。 コード:800A0401 のエラーになります。 VBAは少しわかるのですが、VBSに関しては初心者です。 どこを修正すればコードが通るのか教えてください。

  • JScriptでDBへの接続方法について

    JScriptを使用してDBへの接続方法を教えて下さい。 var conn = Server.CreateObject("ADODB.Connection"); var rs = Server.CreateObject("ADODB.Recordset"); conn.Open; rs.Open("sheet2", "DRIVER={Microsoft Excel Driver (*.xls)}; DBQ =" + Server.Mappath("tes.xls")); sSQL = "SELECT * FROM sheet2"; からの接続がうまくいきません。 どこがいけないのでしょうか? それとも、全てがいけないのでしょうか? よろしければ、どなたかご教授下さい。 お願いします。

  • ADOを使用して、パスワードの設定されているエクセルファイルを開く方法

    ADOを使いエクセルファイルを更新モードでオープンしたいのですが、このエクセルファイルにパスワード(例:読み込み用:aaa、書き込み用:bbb)が設定されていたら、どのように記述すれば良いですか。 パスワードが設定されていない場合は、下記の記述でうまくいきます。 ご存知の方がいらっしゃいましたら、よろしくお願い致します。 'ADOオブジェクトを作成 Set objADO = CreateObject("ADODB.Connection") '更新モードでオープン objADO.Open "Driver={Microsoft Excel Driver (*.xls)};" & "DBQ=" & SavePath & ";" & "ReadOnly=0"

  • ASPによる アクセス2000のデータベース更新について

    アクセス2000で作成したデータベースに ASPでデータベースを更新しようとしたのですが、エラーとなって更新できずにいます。 (アクセスデータベース内容) ID F1 F2 1 TEST1 TEST2 2 1 2 3 4 5 4 23 ※ID の 5  に 23 を登録したい。 (ASP内容) <% ' データベースへの接続を開始 Set cn = Server.CreateObject("ADODB.Connection") cn.Open "Driver={Microsoft Access Driver (*.mdb)}; " & _ "DBQ=" & Server.Mappath("TESTdb1.mdb") cn.Execute"INSERT INTO TTT(ID,F1) VALUES(5,23);" %> (エラー内容) エラー タイプ Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 更新可能なクエリであることが必要です。 /SQL-TEST/ncsch1.asp, line 7 アクセスの追加クエリで、INSERT INTO TTT(ID,F1) VALUES(5,23); を 実行したら、問題無く 5 23 が登録できましたので、データベース自体に他からの実行の場合、更新出来ないような 設定になっていると思うのですが、対処方法がわかりません。 どうすればよいか教えて頂けないでしょうか?

  • VBからAccessへの接続でエラー

    OS:Win2K SP4 SOFT:VB6 ACCESS2K Dim strDatabase As String Dim cn As Object Dim rs As Object Sub xx() Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") strDatabase = "C:\出荷配送システム\mftbc.mdb" cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & strDatabase ・       ・       ・ End Sub 上記ソースの「cn.OPEN」メソッドでエラーが発生します。 エラー内容は 'OPEN'メソッドは失敗しました。'_Connection'オブジェクト データベースに接続できません。 です。 何が原因なんでしょうか?? mdbのあるPath,File名は合っています。

  • ソートの設定

    ASPでアクセス97を使って品番、納期という順番に表示させたいのですが うまくいきません。 SQL文を使って品番順にはならんだのですが、納期がばらばらになってしまいます。どうしたら品番、納期順という並びになるか教えて下さい。 Dim Conn,SQL,RS xxxx=server.mappath("*****.mdb") DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & xxxx Set Conn = Server.CreateObject("ADODB.Connection") Conn.open DBName SQL = "select * from ******" SQL = SQL & " order by 品番 asc" set RS = Server.CreateObject("ADODB.Recordset") RS.Open SQL, Conn,3,3