
No.7
- 回答日時:
さっきの補足です。
さっきのURLは私がアドバイスをして、補足に
>上書き保存の場合、表示されてしまうことと、ユーザー側で誤操作も考えられるので却下されてしまいました。
とありますが、フラグの設定で強制上書きモードが使用できます。
よってユーザー側の誤操作云々は考慮しないでもいいです。
ただし、CDを途中で抜かれてしまうと、確かにオペレーションのエラーメッセージがでます。しかし、、、これは、、、オペレーションのコピーコマンドではなく、VBのコピーコマンドを使用しても、同じこと・・・
(on error を使用したら出ないなどの、しょーもない反論は却下)
コピー状態の進捗を表すのは、やっぱりVBではAPIがベストと思います。
この回答への補足
ありがとうございます。
SHFileOperation関数は確かに使えますね。
一つ質問なのですが、SHFileOperation関数での
上書きの指定ってどのようにすればよろしいのでしょうか?
No.5
- 回答日時:
#3の者です。
#4のご解答を拝見して、#3ではレコード数をみることしか例に挙げていませんでしたが、バイナリなファイルでは、プログラムのはじめに、ファイルサイズとして全バイト数を捉える指令があれば、途中バイト数を捉えれば、処理割合がつかめますね。しかし入出力オリエンティドな処理に限りでしょうが。
一度にメモリに全部読みこみ、あと演算に時間がかかるようなものはだめでしょうが。
ファイル(レコード)数よりかは、単純に”残り何分でコピーが終了します”のようなかんじで処理経過を表示したかったのですが、難しそうですね。
なんとか他の方法で検討してみます。
No.3
- 回答日時:
素人の呟きと思って、読んでください。
●1番質問の件を目指しているのは、(1)プログレスバーコントロールでしょう(下記URL)。そのほか(2)テキストボックス内に、文字(四角の記号、や%数字)表示(3)ラベルコントロールのWidthを色を変えたものを広げて行くなど。
別に場所としてはステータスバーに表示などあるようです。
●進行状況(全体に対する現状)を捉えるのは、どうするのか私は疑問でしたが、結局レコードを読む式のもので無いと掴めないこと思うようになりました。
(1)MoveLastやRecordCount(ファイル全レコード数)的な指令が使えて、全体数を最初に捉えられること。
(2)レコードを読むごとに+1などして、最初からのレコード番号(何番目)が捉えられる指令が組めること。
が必要であること。毎レコードを読む速さは同じと仮定
しているか、無視できるほど小さいことが底にあるわけです。本当は僅かに違うはず。
●例えば、ソートなど読みこみフェーズ、ソートフェーズ、出力フェーズなどのあるアルゴリズムを使った時は
各フェーズは、文章で「何々を実行中」とでも出してその中での進捗状況を他のフェーズと分けて、出さざるを
得ないでしょう。通しで考え様としても、入出力とメモリ内処理では、雲泥の差があって、上手く統一化できないと思います。
●本件質問はファイル「コピー」などであり、全レコード数を最初に求め、読みこむ毎にレコード数をカウントし、決めた定数番目(定数割合番目)にくれば、目盛の%をアップしていけば良い。結局実経過時間の長さを考えることからは逃げていますよね。
http://www.asahi-net.or.jp/~ZN3Y-NGI/YNxv9g1810. …
●実時間で「後何分です」などと表示したいとなれば
実際の終了時間を別に測定して、プログラムに組みこむのだろうか。しかしマシンが変るとおかしなことになりそう。この理由からか、この型の表示はあまり見かけませんね。この件の説明に関心があるんですが、見たことがありません。読書範囲が狭いから?世の中初等的な本ばかり?
時間経過はTimerをセットして知れますが。やる前からAPIを使おうがVBだろうが、必要全体時間は判り様がない気がする。
No.1
- 回答日時:
秒単位でよければ、このやり方で
http://coroco.hp.infoseek.co.jp/memo/vb/keika1/
ミリ秒単位ならば、このやり方で
http://homepage1.nifty.com/Wan/vbtips/vbt002.htm
スタート時の時間を取得し、差で計ります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 Windows10パソコン右クリックメニューで「切り取り」と「コピー」を選択し間違わないようにしたい 3 2022/04/16 10:35
- その他(Microsoft Office) Outlook 2021 アカウント設定時の「サーバーにコピーを残す」について 2 2023/05/09 17:40
- Access(アクセス) Vba Userformを前面に出すについて 3 2022/04/15 12:29
- Windows 10 dataが消えました 1 2022/07/09 07:56
- ノートパソコン dataが消えました 1 2022/07/09 07:32
- Excel(エクセル) 関数を用いて表示したセルの内容を、見えている形でコピーする方法 2 2022/09/14 16:36
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) エクセルでフィルタ後、考えている場所に値コピーができない。 1 2022/05/02 21:01
- Excel(エクセル) K14のセルにVlookup関数を使い IF(J14="","",VLOOKUP(J14,$B$4: 2 2023/05/17 20:26
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSPのNULLレコード表示について...
-
ADO VBA 実行時エラー3021
-
ACCESSで大量の更新を行うと「...
-
DataGridViewの、選択されてい...
-
ファイル書込みで一行もしくは...
-
レコードが存在しなかった場合
-
差し込み印刷のレコード数について
-
vbからmdbのレコード削除
-
固有レコード識別子の選択とは
-
データセットのレコード更新が...
-
Access のフォームで新しい行...
-
[VBA] ADOの Clone と AddNew
-
データベースの内容を変数に入...
-
サブフォームに新規レコードを...
-
Access を×ボタンで閉じ...
-
Excel VBA読み込みで文字化けが
-
vb.netのdatatableのレコード削...
-
AccessVBAのMoveメソッドにつき...
-
カレントレコードが無い事を判...
-
桁数を指定してファイルデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコードが存在しなかった場合
-
DataGridViewの、選択されてい...
-
ADO VBA 実行時エラー3021
-
差し込み印刷のレコード数について
-
ACCESSで大量の更新を行うと「...
-
ファイル書込みで一行もしくは...
-
カレントレコードが無い事を判...
-
ワードの差込印刷で教えて下さ...
-
アクセスでレポートの1印刷内...
-
DataGridViewの内容をDBに反映...
-
[VBA] ADOの Clone と AddNew
-
固有レコード識別子の選択とは
-
JSPのNULLレコード表示について...
-
Access を×ボタンで閉じ...
-
サブフォームに新規レコードを...
-
データセットのレコード更新が...
-
サブレンジ分割されたNDB(富士...
-
レコードセット(ADO.Recordset)...
-
DataGridViewにてセル以外をク...
-
COBOLでのランダムアクセス
おすすめ情報