プロが教える店舗&オフィスのセキュリティ対策術

VBAマクロで、他のシートの複数の項目を一括でクリアする方法ってありますか?
Sheet1でマクロを実施中に、Sheet2の「Range("C1:D11":"F1")」を画面を切り替えずに、クリアするにはどのようにコーディングするのでしょか?

よろしくおねがいします。

A 回答 (3件)

 


>Range("C1:D11":"F1")

こういう範囲設定の方法はありませんぬ。。(^^;;;
今回の場合は、

  Range("C1:D11,F1")   ← こうです。

と、軽~く突っ込んでおいて、、、(^^;;;

●セルに入力されている【値】のみクリアーするなら、

Sheets("Sheet2").Range("C1:D11,F1").ClearContents

●値だけでなく、書式(罫線、文字色など)の書式もクリアーするなら

Sheets("Sheet2").Range("C1:D11,F1").Clear

序に、次も覚えておくといいでしょう。
●書式のみのクリアーなら、 ClearFormats
●コメントのクリアーなら、 ClearComments

以上。
 
    • good
    • 0
この回答へのお礼

有難うございます。
試してみます。

お礼日時:2008/06/04 18:20

>”インデックスが有効範囲にない”とエラーがでるのですが・・・


シート名とVBAでのシート指定は一致していなければ駄目です。

今回の場合、
Sheets("シート2").Range("C1:D11,F1").ClearContents
になります。

シート名の一部にスペースが入っていても同じで、必ず完全一致でなければなりません。
    • good
    • 0
この回答へのお礼

何がいけなかったんだろ?

上記方法で出来ました。
有難うございます。

お礼日時:2008/06/04 18:21

Sheets("Sheet2").Range("C1:D11, F1").Clear

この回答への補足

シート名を "Sheet2" から "シート2" と変更していた場合はどうなのでしょう?
それが原因か”インデックスが有効範囲にない”とエラーがでるのですが・・・

補足日時:2008/06/04 17:27
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング