- みんなの回答 (3)
- 専門家の回答
みんなの回答
- mu2011
- ベストアンサー率38% (1910/4994)
NO1です。 >全シートを一括で消去することは 一例ですが、以下のコードをシート又は標準モジュールでお試しください。 Sub A列色付け行以外削除() For k = 1 To Sheets.Count For i = Worksheets(Sheets(k).Name).Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 If Worksheets(Sheets(k).Name).Cells(i, 1).Interior.PatternColorIndex = xlNone Then Worksheets(Sheets(k).Name).Rows(i).Delete End If Next i Next k End Sub
- MackyNo1
- ベストアンサー率53% (1521/2850)
参考までに。 ご使用のエクセルのバージョンが2007なら「データ」「フィルタ」「色フィルタ」が使えます(このフィルタデータをコピーする)。 ちなみにマクロで色を判断してその行を削除するとき、条件付き書式で色が付けられている場合は、色つきセルと認識されませんが、色フィルタでは条件付き書式で付けられた色もフィルタの対象になります。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 タブシートを右クリック→コードの表示→以下のコードを貼り付けてお試しください。 Sub A列色付け行以外削除() For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 If Cells(i, 1).Interior.PatternColorIndex = xlNone Then Rows(i).Delete End If Next i End Sub
補足
すみません、補足です; このようなシートが沢山あるのですが、 標準モジュールで全シートを一括で消去することは難しいでしょうか?