[[20061018144406]] 『マクロ 保護されていないセルの値消去』(まり) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロ 保護されていないセルの値消去』(まり)

A1 D4 などと飛び飛びのセル単位でロックをかけ保護した場合、
ブック全体で Deleteキーを押しても 読み取り専用のエラーが出ます。
ロックをかけた セル以外の値を消去できる マクロがありましたら
教えていただきたいと思います。
よろしくお願いします。


 たまたま手元にあったコードです。

 'シートの保護をしてなくてもOK
 Sub test()
  Dim c As Range
   For Each c In ActiveSheet.UsedRange
     If c.Locked = False Then c.Clear
   Next
 End Sub
 (MARBIN)


 ロックをかけてあるセルと、そうでないセルは自分で決めるのだから、
 単純にロックをかけていないセルをクリアで良いんじゃないでしょうか?
 こんな感じで。
 Sheets("Sheet1").Range("B2:B4").ClearContents
 Sheets("Sheet2").Range("D1:E10").ClearContents
 (Jaka)

(まり)です。

(Jaka)サン

とびとびでロックしてあるため 簡単にクリアできる方法がないかと思いまして。。。
その方法でもできました^^
ただ テストとしてやったため 使えるようにするためには
何十行もやらないとならないので。。。。 ><

****追加質問****いいですか??

数式がある式以外値消去!!
数式がある場合は数式を残す。

こちらのマクロってできますか?
多分こちらが実行できれば アタシのやりたいことができる気がします。

 (MARBIN)サン
ありがとうございます★
なぜでしょう。一回目の実行はできるんですが
二回目に確認のため セルに値を入れて実行したら
できませんでした↓
ちなみに罫線、塗りつぶしもなくなってしまったので
今回はそちらのやり方ではできなさそうです。
ありがとうございます(*'‐'*) 


 こんな感じでしょうか?

 Sub test()
 Dim r As Range
 On Error Resume Next
 With ActiveSheet
     .Unprotect
         For Each r In .Cells.SpecialCells(xlCellTypeConstants)
             If Not r.Locked Then r.ClearContents
         Next
     .Protect
 End With
 End Sub
 (seiya)

 (seiya)さん
できました★★
ありがとうございます♪♪

(まり)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.