• 締切済み

外部データ取り込みのAccessへのロックを解除するには

ExcelのWorkbook_Openで外部データの外部データの取り込み(QueryTable.Refresh)を実行してAccessのデータを取り込んでいます。 するとロックファイル(XXXX.ldb)が作成されてしまい、同Excelからデータベースの最適化(CompactDatabase)を実行できません。 ロックを解除して最適化を実行できるようにするには、どうしたらよいのでしょうか? アドバイスをお願いいたします!

みんなの回答

  • komet163
  • ベストアンサー率51% (22/43)
回答No.2

こんにちは。 Microsoft Query をインストールしてなくて、ヘルプを見ただけですけど、 Refresh を発行するとクエリを実施するとあるだけで、切断方法は分りませんでした。 (Delete がそれっぽい感じですが、ピポットテーブル自体を削除してしまうのかな?) 推測ですが、クエリ実施 = DB接続 なんで、切断できずに繋がりっぱなし かもしれませんね。当然、繋がっていれば最適化できません。 どうしてもエクセル作業中に最適化するならば、接続方法を再考する必要があるかも。 ADO で、接続状態を管理しながらデータベースとやり取りしてみてはどうでしょう。 蛇足ながら、運用として、複数人でそのエクセルから DB へ接続した場合、 随時に最適化ってのは無理だと思います。

yy2000
質問者

お礼

DELETEで切断できて最適化はできるようになるんですが、次にまたデータの取り込みをするためにはややこしい記述をしてADDしなくてはなりません。 当面は最適化は別の所からCALLするようにして対処することにします。 ありがとうございました。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

レコードロック情報はAccessを終了させないと消えません。 Accessのデータを取り込んだ後にオブジェクトを開放してAccessを終了させてからCompactDatabaseを使い最適化するようにしないと。 CompactDatabaseは閉じているデータベースを最適化するコマンドなのでAccessを閉じていないとダメです。

yy2000
質問者

補足

すみません、言葉が足りないようでした。 AccessのMDBは開いてはいません。 ExcelからQueryTable.Refreshを実行するとLDBファイルができてしまいます。Excelを閉じると消えます。 外部データの取り込みのクエリーのModeが"Share Deny Write"ではなく、"ReadWrite"になっているようです。ここはどのように変えたらよいのでしょうか? はじめにMDBを開いた状態で外部データの取り込みをしたからなってしまったのだと思います。

関連するQ&A

  • 外部データの取り込みについて

    1分おきに外部データを下記のように取り込んでいますが、セルを指定する為に画面が1分後とに動いてしまいます。 セルを指定しないと外部データが取り込めません。 画面を動かさずにデータを取り込める方法が無いでしょうか、よろしくお願いします。 Range("AA1").Select Selection.QueryTable.Refresh BackgroundQuery:=False

  • エクセルでの「外部データの取り込み」について

    資格試験MOSエクセルの勉強中です。 データ→外部データの取り込み→データの取り込み でAccessデータを取り込んだ場合と、 データ→外部データの取り込み→新しいデータベースクエリ で条件指定なしで取り込んだ場合に、表示結果が同じなので、全く同一と考えてよいのでしょうか? 試験では、問題文によって使い分けが必要なのはわかっているのですが、 実務で使うときに、エクセルの機能としては、同じなのか、違いがあるのか 教えてください。よろしくお願いします。

  • AccessのクエリとExcelの外部データの取り込み機能について

    AccessのクエリとExcelの外部データの取り込み機能について 質問させてください。 Access初心者です。 クエリの抽出条件でnot likeを使うと Accessで実行したときには正常に動作するんですが、 Excelの外部データの取り込みのAccessデータベースを選択してExcelへ出力すると 正常に出力されません。 具体例ですが、 ---------------------------------- 住所フィールドには東京都の自治体の名前 個人フィールドには担当者の名前 ---------------------------------- が入ってるとします。 クエリの抽出条件は以下のような感じです。 ---------------------------------- 個人フィールド,住所フィールド 鈴木,not like "*八王子市*" 斉藤, 田中, ---------------------------------- そうするとAccessのクエリの実行結果では 鈴木さんの八王子市を抜いたデータ 斉藤さんの全データ 田中さんの全データ が出力されると思います。 しかし、Excelの外部データ取り込みを使うと 鈴木さんの全データ 斉藤さんの全データ 田中さんの全データ が出力されてしまいます。 どうすれば正常出力できるのでしょうか? Accessからコピー&ペーストしてExcelに貼り付けるしかないのでしょうか? (参考) ・使っているOfficeは2007SP2です。

  • エクセル2000 外部データの取り込み

    お世話になります。 これまで、エクセル2003を使用してアクセスのデータを「データ→外部データの取り込み」で取り込んでいました。 今回使用するエクセルが2000になったのですが、2000には「外部データの取り込み」がありません。 「保存したクエリの実行」では、基となるアクセスのデータを選択できません。 「テキストファイルのインポート」では、基となるアクセスのデータを選択できるのですが、2003とは手順が違う上、文字化けになってしまいました。 過去の質問も検索しましたが、解決できませんでした。 エクセル2000でも、2003のようにアクセスのデータを取り込めるのでしょうか? また、取り込めるとしたら、どのような手順を踏めばよろしいのでしょうか? ご回答のほど、よろしくお願いいたします。

  • 外部データの取り込みができない

    よくある質問でしたら、ごめんなさい エクセル(2002)で「外部データの取り込み」ー「新しいWebクエリ」で 取り込みをしようとすると 「インターネットサイトには接続できましたが、データを取得できません。」と メッセージが出てしまいます 一体なぜなのでしょうか? 一応プロパティとか見てみましたが、原因がわかりません 教えてください

  • 外部データの取り込みをマクロで実行したい

    MAGICというプログラムソフトでできたデータを「外部データの取り込み」でExcelに取り込むことはできます。(これはプログラム開発者に設定してもらいました。)しかし、この取り込む作業をマクロに登録して、いざ実行したくてもマクロ名が空白で実行できません。どなたか、宜しくお願いします。

  • エクセルに外部データの取り込みができない

    エクセルの外部データ取り込みで、アクセスで作ったクエリを取り込んでいましたが、取り込みができないクエリがあります。 クエリ名を変えても、取り込みできるクエリと同じように作っても、 取り込めません。 出来るクエリとできないクエリは何が違うのかわかりません… 何か理由があるのでしょうか?

  • 《エクセル2000》外部データの取り込み・クエリについて

    こんにちは。 エクセルをデータベースとして利用したいと考えています。 「外部データの取り込み」が有効ではないかという意見をいただいたのですが、この項目についての知識がほとんどありません(アクセスはほぼ初心者)。 そこで、質問タイトルのような内容を、基礎から懇切丁寧に記載してくださっているサイトはあるでしょうか。 繰り返しますが、アクセスではなくエクセルです。 以上、よろしくお願いします。 ちなみに、ソフトは最新までアップデート済みです。

  • Excel2007外部データの取り込みについて

    Excel2007外部データの取り込みについて Excel2007を使っています。 Excelファイルから”外部データの取り込み”の”その他のデータソース”でMicrosoft Queryを選択し”データソースの選択”からExcel Files*を選び目的のExcelファイルを選択するとクエリウィザートの画面が出て”列の選択”から”次へ”と進めて完了画面まできて”完了”を押すとエラーメッセージが出てしまいます。エラー内容が ”パラメータが少なすぎます。1を指定してください。” 以前使っていたExcel2003では、このようなエラーは、ありませんでした。 何が問題なのか、教えていただけますか?

  • Excelの「外部データの取り込み」について

    Excelで「外部データの取り込み」の「新しいデータベースクエリ」でAccessのデータをExcelに取り込む場合のデータの整合性や安全性についての質問です。 上記の操作をした場合、元となるAccessのデータが不具合によって、破損・消失することはありえるのでしょうか?  また、上記の操作によって元となるデータの整合性が崩れてしまうことはありますか? もしあるとすれば、どのくらいの確率で発生すると考えられますか? ハードウェアの故障や瞬電・誤操作などは考慮せずに単純にその操作による影響があるのかどうか知りたいです。 職場で上記の操作をしていて、同僚が「整合性が崩れてしまうことがあったらダメだから使わないほうがいい」と言っていたので気になって質問しました。 よろしくお願いします。

専門家に質問してみよう