• ベストアンサー

Accessでのファイルコピーについて

yoko3333の回答

  • yoko3333
  • ベストアンサー率35% (47/134)
回答No.2

API関数ですが・・・。 空耳工房 http://www.bea.hi-ho.ne.jp/my2project/ こちらのサイトで「VB」-「システム環境取得設定関連」-「ディスクが挿入されているかを調べる」というのがあります。 私はFDのチェックしかやったことがないのですが、たぶんMOでもOKじゃないでしょうか。 もしくは、チェックせずにいきなりコピー処理を実行して、エラー内容で拾うことも可能です。 (ただし、こちらもFDの場合です。MOでは違うかも・・・。) Private Sub コピー処理() On Error GoTo Err_コピー処理 'コピー処理 Exit_コピー処理: Exit Sub Err_コピー処理: Beep If Err.Number = 70 Then MsgBox "このディスクはライトプロテクトされています。ライトプロテクトを解除するか、別のディスクを挿入してください。", vbExclamation, "エラー" ElseIf Err.Number = 71 Then MsgBox "ディスクを挿入してください。", vbExclamation, "エラー" ElseIf Err.Number = 76 Then MsgBox "設定ファイルに無効なディレクトリが指定されています。", vbExclamation, "エラー" Else MsgBox Error$ End If Resume Exit_コピー処理 End Sub

aikun
質問者

お礼

早速の回答ありがとうございます。 参考にさせていただきます。

関連するQ&A

  • 【access】マクロファイルのコピー(移動)について

    こんにちは。 新しく作成したMDBに 以前作成したマクロファイル自体を コピーもしくは移動させたいのですが、 どのような手法を用いればよろしいのでしょうか? 以前作成したマクロファイル自体をコピーして新しく作成したMDBに保存しようとすると、 「サブフォームを含むフォームがあるデータベースを開くと"データベースを開けない状態、またはロックできない状態にしています"エラーメッセージが表示される」 というエラーが表示されてしまいます。 原因を調査したところ、 accessを以前のmdbと新規のmdb、2つ立ち上げているからという理由がわかりましたので、 以前のマクロファイル自体をコピーして、 以前のaccessを閉じてから新規のaccessに貼り付けようと思いましたが、 以前のaccessを閉じようとしたとき、 クリップボードをすべてからにしますとの表示がでます。 これではコピー(貼り付け)ができません。 ご教授のほどお願いします。

  • Access2000で”直前の操作はキャンセルされました”メッセージが出た時

    Windows NT4.0でAccess2000を使用しています。 フォームでデータ入力後、終了しようとすると ”直前の操作はキャンセルされました”という OKボタンのみのメッセージボックスが出て、 終了できなくなります。 また、タスクマネージャーによる強制終了後 同じMDBを起動すると、 ”モジュールがありません”というメッセージが出ます。 原因となったフォームを確認しようにも フォームビューでもデザインビューでも 開くことができません。 (フォームそのものの削除はできますが。) どなたか対処の仕方を教えて下さい。 Access2000は初めてだし、VBAのマニュアルしかないし・・・ 97ではこのようなことはなかったのですが。 もう期限が迫ってますので、結構困ってます。

  • ACCESSフォームのボタン表示

    ACCESSフォームのボタン表示 ACCESS2000で作成したフォームのボタンはACCESS2007でも変わりません。 ACCESS2007で一から作成したMDBは、ボタンの表示スタイルが異なります。 ※ボタンの角が丸く、マウスカーソルをボタンの上に当てるだけで色が変わる。 ACCESS2000で作成したMDBをACCESS2007で上記のように表示させる設定は あるのでしょうか? いろいろ見ても、見当たらないのです。 よろしくお願いします。

  • AccessからAccessを開く

    Access2003です。 今AAA.mdbのフォームを開いています。このフォーム上にボタン(このボタンの正式名称は分かりません。たしかツールの中に入っていたもの)を貼り付けこのボタンをクリックして新たにBBB.mdbを開く方法を教えて下さい。 尚AAA.mdbもBBB.mdbも同じホルダーにあります。 BBB.mdbに書き込んだ後BBB.mdbを閉じると画面にはAAA.mdbが残っているようにしたいです。

  • Access2000について

    Accessでの質問です。(排他処理について) フォームにとあるテーブル(リンクテーブルを使用 しています)のデータを一覧表示させています。 一覧表示させるテーブルの項目にはチェックボックスの 項目があり、フォーム上でそのチェックボックスを クリックして「削除」ボタンをクリックすると、 チェックがついたものだけをフィルタをかけて 表示させたあとで、モジュール内でそのチェックのついた データを削除する処理をしています。 このフォームを複数ユーザーで使用します。 それぞれのマシンごとにmdbはコピーして使うのですが、 リンクテーブル先は同じです。 (1)のマシンにてフォーム上でチェックボックスにチェックをつけ、「削除」ボタンはクリックしないまま、 そのままにしておいて、 (2)のマシンにて同じデータにチェックを付け、 「削除」ボタンクリックにてそのデータを削除したあと、 (1)のマシンにて「削除」ボタンをクリックすると、 (1)のマシンのmdbが異常終了してしまいます。 どうやら(1)のマシンが削除させようとして フィルターをかける時点で、既に(2)のマシンによって そのデータはテーブルから削除されているので 異常終了しているみたいです。 これを異常終了させないようにするには どうしたらいいのでしょうか? わかりづらい文章になってしまってすみません。 どうかアドバイスを宜しくお願いします。

  • Accessファイルをコピーするとコードが消える

    まだAccessを触り初めてから日が浅いこともあり、すでに稼働しているファイルをコピーしてから 勉強用、変更用として利用することが多いのですが コピー後起動させてみるとコード内のVBAが省略?されていることがありイベントが実行されないという現象が起きています。 下のような状態です。 Private Sub ページフッターセクション_Format(Cancel As Integer, FormatCount As Integer) ↓ Private Sub ページフッタFormat(Cancel As Integer, FormatCount As Integer) コピーが原因かはわかりませんが、本日コピーを数回行って試したところ、すべてのコピーファイルで症状がでました。(単純に元ファイルが既におかしかったのかも) mdbファイルaccdbファイルともに同じ症状が起こる場合があります。 VBAがおかしくなった場合元データ、コピーデータ共におかしくなっていることがあります。 通常にファイルをコピーすることもできています。 こういった文字が省略された形でコピーされるというのは何が原因で起こる症状なのでしょうか? お分かりの方がいらっしゃいましたらご教授ください。 環境 windows7professional32bit Access2010

  • VBからmdbファイル(Access2000)の特定のフォームを開きたい?

    VisualBasicのフォームに配置したコマンドボタンをクリックすることで、特定のmdbファイルをAccess2000で開き、開くと同時に特定のフォームが表示されるようにしたいのですが、こんなことできますか?できるとすればどのようにすればよいのですか? 例えば、C:\商品管理\在庫一覧.mdbにフォーム商品があるとしたとき、 Form1のcommand1をクリックすると、C:\商品管理\在庫一覧.mdbがAccess2000で開き、フォーム商品が最初に表示されるようにしたいのですが・・・ ちなみに、Access2000の起動時の設定では他のフォームが最初に開くようになっています。 よろしくお願いします。

  • アクセスVBAでVBYESNOボタンについて

    ど素人ですいません。 アクセスでVBAを書いています。 クエリーを走らせる前に確認のメッセージを表示させます。「Vbyesno」ボタンでYesなら処理開始、Noなら元のフォームに戻りたいのですが、どうしたらいいのでしょうか?

  • アクセスMDBファイルが壊れた

    アクセスMDBファイル(access2000)が壊れたようでテーブルを開こうとすると下記のようなメッセージが出ます。(これは、このデータベースからデータを拾っているaspファイルの一部のようです。)そのままOKを押すと開けることもあれば、開けないこともあります。 #テーブルをコピーしてもだめ #「修復」をしてもだめ #MDBファイル全体をコピーしてもだめ #あとの手を思いつきません。 ----ここからメッセージ---- クエリ式 'szObject = wszTableName OR szReferencedObject = wszTableName' の 構文エラー

  • Accessのmdeファイルについて

    お世話になります。 Access2000で作成しています。 Access2000で作成したmdbファイルから、mdeを作成。 access2000のRuntimeが入っているパソコンで開いたところ、 フォームが表示されず、何も実行できないウィンドウが 開くような状態なのです。 mdbからの書き出し時に、どのように設定すれば、mdeのフォームなどが 開いた状態になるのでしょうか? お手数ですが宜しくお願いします。