2016-11-04 13 views
0

行のすべてのエントリが空白の場合、空の行を削除するマクロを実行しています。私は、シートがパスワードで保護されているので、しかし、コードを持っている、パスワードを削除し、最初にワークシートの保護を解除すると言うメッセージが表示されます。すべての段階でシートをロックする必要がありますが、空の行を削除する必要もあります。誰かが私がコードのこの部分に入るのを助けることができるなら、この問題は克服されます!私は現在持っているコードは次のとおりです。Excel VBAパスワード保護されたシートの空白行を削除する

heets("Media Plan").Select Cells.Select Selection.SpecialCells(xlCellTypeBlanks).Select Selection.Delete Shift:=xlUp

多くの感謝!

答えて

1

シートの保護を解除し、空の行を削除して保護を元に戻します。

Sheets("Media Plan").Select 
ActiveSheet.unprotect Password:="password" 
    Cells.Select 
    Selection.SpecialCells(xlCellTypeBlanks).Select 
    Selection.Delete Shift:=xlUp 
ActiveSheet.protect Password:="password" 
+0

上記のコードを再調整して、空白行のみを特定の範囲から削除したい場合はどうすればよいですか? B13からB20、B22からB26、B28からB33の行を調べる必要があります。 – Syed

+0

検査する行を含む名前付き範囲を定義し、選択したセルの代わりにコード内で使用することができます。 –

+0

シート( "メディアプラン") ActiveSheet.unprotect Password:= "password" 範囲( "ExamRows")。SpecialCells(xlCellTypeBlanks).Select( "Media Plan")選択した範囲が "ExamRows"の場合、コードは次のようになります。 Selection.Delete Shift:= xlUp ActiveSheet.protect Password:= "password" このコードはテストしていませんが、このようなものは動作するはずです。 –

関連する問題