• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB6→Access2000)

VB6からAccess2000へのデータベースの形式の認識エラーの解決方法

TAGOSAKU7の回答

  • TAGOSAKU7
  • ベストアンサー率65% (276/422)
回答No.3

Private Const DB_FILE As String = "c:\test.mdb" はモジュールの先頭 Option Explicit の次に書いておいたら、そのモジュール内で使用できる定数になります。 ところで > DbName = "ファイルのありかを記述" > DbResource = Data1.RecordSource > Data1.DatabaseName = DbName この順番を見るとData1.RecordSource としてますよね? Data1はすでに何かに接続済みなのですか? もっと広範囲でソースが見たいです。 上記の3行を含む関数ごと見せてもらえませんか?

tazataka
質問者

補足

本当に何度も申し訳ございません。 お答えになっているか、どうか一抹の不安が残るのですが 解らないなりに書いてみましたのでご確認をお願いいたします。 標準モジュール Module1に Public DbResource1 As String Option Explicit には Dim db As Database Dim ds As Recordset Dim DbName As String と表記し Private Sub Form_Load()には DbName = "E:\KEISAN\Gesui\負の突出_1\Mdb\管諸元.mdb" DbResource = Data1.RecordSource Data1.DatabaseName = DbName としております。

関連するQ&A

  • VB6.0開発ソフトインストールできません

    VB6.0でデータベース(SQLSERVER7.0)をアクセスする プログラムを作りました。 そのプログラムをVB6.0が インストールしていない他のパソコンでも 動かしたいので ディストリビューション ウィザードで setup.exeを作り 他のパソコンにセットアップしようとしたら 「ファイルC:\WINNT\SYSTEM32\msado21.tlbの 登録中にエラーが発生しました」と 表示されセットアップできません。 なおセットアップのログファイルを見ると エラーC:\WINNT\SYSTEM32\msado21.tlb中に DLLRegisterSerer()のエントリポイントが 見つかりません。 次の処理中:DllSelfRegister: "C:\WINNT\SYSTEM32\msado21.tlb" とありました。 セットアップでき、実行できるようにするには どのようにしたら良いですか? もちろんexeファイルをコピーし 他のパソコンにいれても実行されません。 エラーメッセージは 実行時エラー430 クラスはオートメーションまたは予測したインターフエースをサポートして  いません

  • VB2008からVB2010に更新したのですけど。

    VB2008EEで作ったデーターベース(Accessでつくった。)を操作するプロジェクトをVB2010EEでファイルを更新して実行しましたが、「Micosoft.Jet.OLED.4.0プロバイダーはローカルのコンピューターに登録されていません。」とのエラーが表示され、データーベースにアクセスできません。データーベースは少し古いAccessで作ってます。このエラーを解除する方法を教えてください。いろいろ本を買って読んだり、いろいろ質問項目をみていたのですが、解決方法が見つかりません。どうかよろしくお願い申し上げます。

  • VB6のデバッガ?強制終了?について

     お世話になります。VB6とアクセスにてデータベースを作成中、動作確認のため実行したところ、「問題が発生したためVBを終了します。」が出現、VCが立ち上がり、   「VB6-MICROSOFT C++[停止]-[混合モード] メッセージボックス出現、 「デバッグ ハンドルされていない例外は VB.EXE(VB6.DLL)にあります。OXC 0000005:Accsee Violation」  となります。   そして、そのVCを閉じると「このコマンドを実行するデバッガを停止します」となります。  懲りずに又実行するとやはり同じです。仕方が無いので、VBの別なプロジェクトを用意して、先程のプログラムを「エラーの原因と思われる箇所を除いて」コピーして実行したところ今度は問題なく動きました。  単にコードの記述間違いならその程度を示すメッセージボックスがでるだけでしたが、VC出現は初めてです。  私なりの対処法で、「別のプロジェクトにもう一度書き直す」で一応はメドがたったようですが、別の対処法があれば御教授御願いします。 また、「明確な原因」がわかるならそれもお願いします。

  • オートメーションエラーについて

    こんにちは。palbanです。 現在VBからACCESSにデータを保存するシステムを作成しています。 VBからACCESSの接続にはADOを使用しています。 バージョンはVB6.0SP5,ACCESS2002です。 このシステムをAPI関数のSENDMESSAGEを使用して終了させているのですが、システム終了後以下のような メッセージがでます。 実行時エラー'-2147417848(80010108)': オートメーションエラーです。 起動されたオブジェクトはクライアントから 切断されました。 このエラーの回避方法をご存知の方ご教授願います。 私の方でも調査しましたが修正方法がどうしても わかりません。 宜しくお願いします。

  • VB6でデータベースを変えるとテーブル形式エラーになります

    VB6 とACCESS97 でプログラムを作成、問題なく動いていました。 事情により、このパソコンにACCESS2000をインストールし(ACCESS97 と ACCESS2000 の二つが入っています)VB6のデータベースをACCESS2000に変換しました。 VBの参照設定をMicrosoft Access8.0 Object Livery から9.0 に換え、ACCESS 2000のデータベースのプロパティでファイルの種類をMicrosoft Access から Microsoft Access for Windows に換えました。 これを実行すると「実行時エラー3343 データベースの形式 "C:\SALES\TEST.mdb" を認識できません」と出ます。 他に修正すべきところがあるのでしょうか?それともバージョンの違うACCESS を併用するのはまずいのでしょうか? TEST.mdb をクリックすると、ACCESS2000で問題なく立ち上がります。 なお、VBからACCESSへの接続は下記のように書いています。 Public DB As DAO.Database Set DB = DBEngine.Workspaces(0).OpenDatabase("C:\SALES\TEST.mdb") 宜しくお願いします。

  • VB.NET(Webアプリ)のアクセス権について

    VB.NETでプログラム作成中のファイルを、新しいハードにコピーして、続きを作成したいのですが・・・。 データを入力して、データベースに保存するプログラムを実行する際、「データベースが開きません」のエラーが出ます。同じデータベースでデータを読み込むプログラムの部分では実行可能です。 私は初心者だし、少し詳しい人に聞いたところ、セキュリティーの設定のところとか、アクセス権に問題があるのでは?というところまでしか分かりません。 うまく説明できないので、わかりにくいかもしれませんが、なにか参考になることがあれば教えてください。 宜しくお願いします。

  • VBからACCESSレポートの出力について

    仕事で住所録データベースを作っているところなのですが、 色々と分からないことがあるので、是非、相談に乗って下さい。 VBからACCESSレポートの出力について、行っているのですが データベースから、自分の条件にあったデータだけを取ってきたい のですが、どうしたらよいのでしょうか?? ちなみに、ACCESSのクエリを実行して、欲しいデータを取ってくる のではなく、VB上の画面に入力したデータで、ACCESSのデータを 検索を行うものです。 例えばこんな感じです。 ↓ VBで検索一覧画面から、社員番号を入力する。(テキストボックス) ↓ 実行ボタンを押したとき、テキストボックスに入った社員番号を 自動的に読み取り、ACCESSのデータベースから データを検索する。 こんな感じです。分かりにくい説明ですいませんが 宜しくお願いします。

  • Access95→Access2000への変換について。

    こんにちは。 Access95で作成したプログラムを、Access2000に変換して使用したいので、 Access2000で95のバージョンのプログラムを開き、データベースの変換を したのですが、なんだか上手くいきません。 (1)「起動時の設定」をしていないのに、起動時の設定がかかる (データベースウィンドウの表示など) (2)95のときは出ていなかったエラー(パラメータの入力)を求められる (3)フォームのコードを開いて、コンパイルをかけようとしてもグレー表示に  なっているため使用できない 以上、おかしいと思われる点ですが、95のプログラムは私が作成したものでは ないため、詳しいことがよく分からないのです。 データベースはテーブルのみのもの(仮にAとします)と、Aからリンクした テーブル、クエリ、フォーム、レポート、モジュールなどがあるデータベース (Bとします)の二つのデータベースを使用しています。 私のコンピュータの環境としては、 OSはWindows98 Second Edition、 Accessは97と2000が入っていますが95は入っていません。 大至急何とかしたいのですが、よろしくお願いします。

  • VBからのACCESSの起動に関して

    開発環境:Visual Basic 2008/ACCESS 2000 VB2008よりACCESSを更新したり、ACCESSのレポートを使用したりする プログラムを作成しています。 その際に、1つのACCESSに複数のレポートを作成している事から、複数のプログラム からACCESSを起動させようとするとエラーとなってしまいます。 ACCESSをそれぞれ分けてしまえば問題ないですが、、、、 そもそも1つのACCESSファイルを複数からアクセス(複数のVBプログラム)するという事が 不可能なのでしょうか? あるいは、下記の記述にあるように、データベースを開こうとするかエラーである為、 開いているか確認の記述をし、既に開いているようだったら、その処理をとばすような事 をすれば問題ないのでしょうか??? 教えて頂きたいと思います。 よろしくお願いします。 《記述内容》 Dim ac As Object ac = CreateObject("Access.Application") With ac 'アプリケーションを表示する ac.Visible = True 'データベースを開く ac.OpenCurrentDatabase("C:\sample.mdb") '名前を指定してレポートを開く ac.DoCmd.OpenReport("R_一覧表", 2) 'acViewPreview 'レポートの最大化 .DoCmd.Maximize() 'オブジェクトの解放 System.Runtime.InteropServices.Marshal.ReleaseComObject(ac) End With ac = Nothing

  • こんにちは。Access初心者です。

    こんにちは。Access初心者です。 現在、Access2003でデータベーステーブル更新機能を作成しています。 連結テキストボックスを作成し、入力規制を以下のように設定しました。 ●フィールドサイズ16(プロパティで設定) ●入力必須(プロパティで設定) ●未入力の場合はエラーメッセージ表示(プロパティで式を設定) このテキストボックスに対して「4」を入力した際、上記エラーメッセージが表示されてしまいます。 他のテキストボックスに「4」を入力した場合は同様の現象は起こりません。 これはAccessの入力規則等に関係するのでしょうか? もしくは設定ミスでしょうか? もし何かご存知でしたら、回答をお願いいたします。