[[20140515124236]] 『シートの保護とセルロックされているシートのロッ』(マクロ大変) ページの最後に飛ぶ

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

 

『シートの保護とセルロックされているシートのロックされていないセルをクリアしたい』(マクロ大変)

マクロの勉強をしていて、以下を作成してみました。
シート保護されているエクセルでE4セル〜入力のある最終セルを取得して
ロックされていないセルをクリアする仕組みを作りたいです。

ネットで色々検索して以下を作成してみましたがうまくいきません。
どのように作ればいいでしょうか?よろしくお願いします。

    For Each myCell In Range(E4, ActiveCell.SpecialCells(xlLastCell))
        If Not myCell.Locked Then
        myCell.ClearContents
        End If
    Next

< 使用 Excel:Excel2013、使用 OS:Windows8 >


 >E4セル〜入力のある最終セル
 がどの範囲かわかりませんが、
     Range(E4, ActiveCell.SpecialCells(xlLastCell))
 はとりあえず下記でしょうか。
     Range("E4", ActiveCell.SpecialCells(xlLastCell))

 列が E 列だけだったら、また別の対応が必要です。
(Mook) 2014/05/15(木) 16:44

http://support.microsoft.com/kb/213203/ja

 シート保護の状態だと SpecialCellsメソッドがエラーになるんですねえ!!

 これ、Excel2010でも発生しました。

 回避方法は、↑本店サイトにもありますが、シート保護を

     ActiveSheet.Protect UserInterfaceOnly:=True

 で保護すれば、使用可能でした。但し、この保護の場合は、ブックを開く度にコードで設定しなければ
 なりませんよ!! 

 どれかで回避してください

(ichinose@子供とC++を勉強開始かな?) 2014/05/15(木) 17:11


コメント返信:

[ 一覧(最新更新順) ]


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