• ベストアンサー

Access2000 CopyFromRecordsetでの出力状態をプログレスバーに反映させたい。

Access2000のレコードセットをCopyFromRecordsetメソッドを使用してデータ出力させています。 しかし、最近データ量が多くなったため、進行状況をプログレスバーで表示したいと思っています。 画面下のステータスバーに表示されるのではと思ったのですが、 「そんなとこまでうちの社員は見ないだろう」と却下されてしまいました。 通常ならDo~Loop処理などの際にプログレスバーのValue値を変えればいいとおもうのですが、 このような「Accessにおまかせ」状態の時はどのようにすればいいのでしょうか。 となたかご教授ください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.2

>クエリなどは下のステータスバーに表示されたりするのに そうですよねぇ。 ただ、先の回答はいわゆる正攻法ってやつで、API使ったらまだ道はあると思いますよ。 例えば、メッセージをフックするAPIを使って、ステータスバーに送られるメッセージを横取りするとか… 「メッセージ フック OCX」などのキーワードをネットで検索すると、その手のコントロールも落ちてると思います。 ただ、そこまでする必要があるかと言うと、私としてはちょっと疑問なんですが…

j279702
質問者

お礼

ありがとうございます。初めてメッセージフックというモノを知りました。 早速メッセージフック等を調べたのですが、「お前理解できるのか???」と自問自答・・・というか早くも挫折しています。 うちの会社も結構無茶を言います。 今日はsyscmdなど調べたのですが 「だからその値をプログレスバーに入れたいんだよ~!!」 と、もう少しで暴れてましたね。 これはやはり問題となったAccessファイルを会社で使用させる際に「こういうものだ」と教育した方が早そうですね。

j279702
質問者

補足

うわぁ。すみません。放たらかしにしてたぁ。締切もしてないし。 とにかく本当にありがとうございました。 あれから社内で話し合ってアイコンを動かしてとりあえずフリーズではないと 見た目に判るようにすることで解決しました。 でも調べれば調べるだけ、結構Accessって奥が深いって判りました。 これからも勉強していきますので、またよろしくお願いします。

その他の回答 (1)

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

データを例えば1000件ごとに分割しまして、Do~Loop内で1000件ずつ転送する処理を書いてやればいいかと思います。(重くなるかもしれないけど(汗))

j279702
質問者

お礼

そうですか。やはり一括処理されてしまう更新・追加クエリや、コピーの進捗状況って把握できないんですかねぇ。クエリなどは下のステータスバーに表示されたりするのに、悔しいですね。 情報いただき本当にありがとうございました。また宜しくお願いします。

関連するQ&A