プロが教えるわが家の防犯対策術!

エクセル2000を使っています。
B列のいくつかのセルの中に赤色の数値を入力したのですが、
赤色の数値が入っている行がすべていらなくなったので削除したいです。
1行1行選択して削除していくと時間がかかるので、まとめて赤文字の行を複数選択して削除したいです。どうすればよいでしょうか?

エクセルははじめたばかりです。。。

A 回答 (6件)

#2のka_na_deです。



たびたび、ごめんなさい。
質問には、赤色の数値はB列にあると書いてありましたね。

変更しましたので、前のコードは無視してください。

Sub test()
 Dim r As Long

 Application.ScreenUpdating = False

 For r = Range("B65536").End(xlUp).Row To 1 Step -1
   If Cells(r, "B").Font.ColorIndex = 3 Then Rows(r).Delete
 Next r

 Application.ScreenUpdating = True
End Sub
    • good
    • 0
この回答へのお礼

マクロなんて機能はじめて使いました。

教えていただいたとおりに進めていったら出来ました!
ありがとうございました。

お礼日時:2007/08/05 20:22

>1行1行選択して削除していくと時間がかかるので


マイナスのセルを1発の操作で削除する操作は作られていない。
ーー
それでVBAの出番です。
例データ
2
-7
3
4
-3
-6
6
7
-2
-16
8
1
3
-3
ーー
コード
標準モジュールに
Sub test01()
d = Range("A65536").End(xlUp).Row
s = ""
For i = 1 To d
If Cells(i, "A") < 0 Then
s = s & Cells(i, "A").Address & ","
End If
Next i
s = Left(s, Len(s) - 1)
Range(s).Delete 'Activate
End Sub
ーーーー
実行結果
2
3
4
6
7
8
1
3
    • good
    • 0

赤色にした数値の 共通点 はありますか?



例えば、0以下の数値 とか
    A列が“○”だった場合

など、共通点があるなら
『オートフィルタ』を使ってみてはいかがでしょうか?

 オートフィルタについて↓
  http://kokoro.kir.jp/excel/auto-filter.html
    • good
    • 0

#2です。



訂正します。
誤:Dim r As Integer
 ↓
正:Dim r As Long
    • good
    • 0

その赤色をつけた数字に何か法則があれば、


それを利用してフィルター操作で抽出後に削除できると思います。

しかし、何も法則がないのであれば、エクセルのメニュー操作では、
不可能だと思います。
マクロは全く分からないと思いますが、私も自分の勉強のために
作ってみましたので、参考にしてみてください。
尚、マクロの実行はやり直しが効かないので、大切なデータは、
バックアップ後に試してみてください。

Sub test()
 Dim c As Integer
 Dim r As Integer
 
 With ActiveSheet.UsedRange
  For c = 1 To .Cells(.Cells.Count).Column
   For r = Cells(65536, c).End(xlUp).Row To 1 Step -1
    If Cells(r, c).Font.ColorIndex = 3 Then Rows(r).Delete
   Next r
  Next c
 End With
End Sub


<使い方>
1)赤文字の入ったシートを表示させ、
  下のシート名のタブの上で右クリック
2)「コードの表示」をクリック
3)左側のプロジェクトエクスプローラーで、
  VBAProjectのの上で右クリック、「挿入」→「標準モジュール」
 (プロジェクトエクスプローラーが表示されていなければ、
  上部の「表示」メニューから選択表示できます。)
4)右側に上記のマクロを貼り付けます。
  実行は、上部の再生マークボタンを押してください。
    • good
    • 0

Ctrlキーを押しながら行番号をクリックしていくと、飛び飛びに選択できます


最後にまとめて「削除」で消えます
    • good
    • 0
この回答へのお礼

データ量が少なければこの方法でよかったのですが、データの量が多いもので。。。
回答ありがとうございました。

お礼日時:2007/08/05 20:23

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