エクセルシートのクリア


XLS  2005-04-26 01:56:26  No: 121276

VBよりエクセルのシートを指定してそのシートの中の全データを
クリア("")したいのですが、
どのようにしたら一番高速なのでしょうか?
今はシートを選択して全体を選択してクリアしています。
しかし遅い・・・
教えて下さい。


いな  2005-04-26 02:02:33  No: 121277

エクセルシートを削除して再作成はだめなの?


特攻隊長まるるう  2005-04-26 02:27:31  No: 121278

実行環境(PCのスペック)や
セルを幾つ選択してて、
実際に時間を計測したら何秒なのか、
を書かないと…。光の速さを超えないと
満足いかないのであれば、はじめから
無理な相談ですから。

Range.Clear が一番の正攻法。
後はシートを非表示にしたり…自動計算や
グラフの再描画を少なくしたり…クリア処理とは
違う部分で2次的な処理の調整になると思います。


特攻隊長まるるう  2005-04-26 02:39:56  No: 121279

あ、特に範囲指定無く、シート上の全てのセルなら
     Cells.Clear
でできます。シート…列幅とか残さない方がいいなら
いなさんの方法もありだと思いますが…。


いな  2005-04-26 03:15:00  No: 121280

実際、データのクリアってどこまでやるんだろ・・・。
スレヌシの回答まちだね。


id_rsa+  2005-04-26 04:40:02  No: 121281

>シートを指定してそのシートの中の全データ
なので、
Sheets("シート名").Cells.Delete
かな?


特攻隊長まるるう  2005-04-26 18:52:14  No: 121282

セルに入ってる値だけ…って場合は
配列で値を一括して入れるサンプルを既に載せてます。
過去ログ検索『Resize』でどうぞ。

しかし…いずれの方法でもセル10000くらい対象に
やって0.5秒掛からない…(CPU1.6GHz)


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加