ここから本文です

エクセル、行削除マクロについて

nya********さん

2011/8/2818:37:47

エクセル、行削除マクロについて

例えばA1にあという名前をつけてA2からはすべて数字が並んでいるとします。
A列にある数字を例えばB列に入力した数字が一致した場合はA列の一致した部分の数値の行を削除するような事はマクロで可能でしょうか?

頻繁に行を削除したいデータがありましてその都度、検索して行を消しています。
B列に消したい数字をB1、B2、B3と連続して入力しておけばA列に引っかかる数字がある場合はその引っかかる数字の行を削除といったような事はマクロで可能でしょうか?

補足ご回答ありがとうございます。
希望通りの操作ができました。
すみませんで来たら別タブSheet2などに消したい数字を貼った数字がSheet1で消せるようにする事は可能でしょうか?

閲覧数:
262
回答数:
2

違反報告

ベストアンサーに選ばれた回答

kei********さん

編集あり2011/8/2819:58:33

nyancooooさん

【補足に対する追記】****************

Sheet1のA列にデータがあって、消したいデータをSheet2のA列に記述しているとして、、
マッチしたSheet1の行を削除します。。
Sub Sample2()
Dim i As Long, j As Long
Sheets("Sheet1").Activate
j = Cells(Rows.Count, 1).End(xlUp).Row
With Sheets("Sheet2")
For i = j To 1 Step -1
If WorksheetFunction.CountIf(.Columns(1), Cells(i, 1)) Then
Cells(i, 1).EntireRow.Delete
End If
Next i
End With
End Sub

【最初の回答】
こういうことかしら。。
Sub Sample()
Dim i As Long, j As Long
j = Cells(Rows.Count, 1).End(xlUp).Row
For i = j To 1 Step -1
If WorksheetFunction.CountIf(Columns(2), Cells(i, 1)) Then
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub
************<<標準モジュール>>*****************
<マクロの張り付け>
1.上記のマクロコードをコピーして、、エクセルのシートに戻って、、
2.「Alt」キーを押したまま「F11」→「I」→「M」と順番にキーを押していきます。
3.広い窓のカーソルが「テカテカ」しているところにコードを貼り付けます。
4.もうこのVBEの画面は必要ないので、右上の「×」を押すと、元のシートに戻ります。

<マクロの実行>
1.データのシートから「Alt」キーを押したまま「F8」を押します。
2.マクロのダイアログで、マクロ名が「Sample」となっているのを確認して「実行」

質問した人からのコメント

2011/8/28 20:19:31

ご丁寧な対応ありがとうございました!

ベストアンサー以外の回答

1〜1件/1件中

har********さん

2011/8/2818:49:12

こんな感じでしょうか。

Sub Row_Delite()
Dim i As Long
For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Cells(i, 1) = Cells(i, 2) Then
Cells(i, 2).EntireRow.Delete Shift:=xlUp
End If
Next i
End Sub

まことに申し訳ありませんが
>B列に消したい数字をB1、B2、B3と連続して入力しておけば
>A列に引っかかる数字がある場合はその・・・
の意味が理解できず、反映できていません。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる