
特定の国で特定の商品コードの行だけ残して他全部削除したいです。
元データは10,000行くらいあります。
D列に国名が入っているのですが、特定の国を残し
H列に入っている商品コードも特定の商品コードを残し、残りの行は削除したいです。
残したい国名と商品コードは【設定】というシートを作成しC列、D列に記載してあります。
※すぐに変更したりできるように設定シートを利用したいと思っています。
先程まで国名だけで絞ればよかったので下記コードを記載したのですが
プラスして商品コードでも絞って削除したいのですが、
AND条件での絞り方をどうやって記載すればよいのか解らず教えていただけないでしょうか。
よろしくお願いいたします。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Sub 不要な行を削除したい()
With Application
.Calculation = xlCalculationManual
.EnableEvents = False
.ScreenUpdating = False
End With
Dim i As Long
Dim m1 As Long
Dim m2 As Long
'元データと設定の最終行を求める
m1 = Worksheets("元データ").Range("D" & Rows.Count).End(xlUp).Row
m2 = Worksheets("設定").Range("C" & Rows.Count).End(xlUp).Row
With Worksheets("元データ")
'フィルタで一致するもののみ表示する
.Range("D5:D" & m1).AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Worksheets("設定").Range("C2:C" & m2)
'最終行から非表示になっている行を削除
For i = m1 To 2 Step -1
If .Rows(i & ":" & i).Hidden = True Then
.Rows(i & ":" & i).Delete Shift:=xlUp
End If
Next
'フィルタ解除
.ShowAllData
End With
End Sub
No.2ベストアンサー
- 回答日時:
こんばんは
せっかくAdvancedFilter(=フィルタオプション)を使っているのですから、検索条件の範囲に複数条件を設定しておけばよいだけではないでしようか?
フィルタオプションの複数条件の例
(VBAではなく普通のエクセルの操作方法です)
https://office-hack.com/excel/filter-multiple/
No.3
- 回答日時:
元データで削除対象となるのは、
5行目からですか、それとも、2行目からですか。
フィルターは5行目からで、
削除は2行目まで行なっています。
一貫していません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【VBA】条件に一致しない行を削除したい
Visual Basic(VBA)
-
特定の文字がある行以外を削除するマクロ
その他(Microsoft Office)
-
【Excel VBA】複数ある特定の文字列を含む行を削除
Excel(エクセル)
-
-
4
指定した文字があった場合、その行を削除するマクロが欲しいです
Excel(エクセル)
-
5
EXCELで条件に合わない行を削除して詰めて新しいシートに表示したいのですが
Excel(エクセル)
-
6
IF関数などを使って条件に合った「行」を削除するような機能はありますでしょうか?
Excel(エクセル)
-
7
Excel VBA A列が特定の値以外の場合、その行を削除
Excel(エクセル)
-
8
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
9
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
10
VBAでのリスト不一致抽出について
Visual Basic(VBA)
-
11
【VBA】特定列に文字が入っていたらそのセル行をコピーしてマスターブックの同じ行に貼り付けたい
その他(Microsoft Office)
-
12
VBA 指定した回数分、別シートにコピー
Visual Basic(VBA)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
エクセルで複数のシートのクリアをしたいです
Excel(エクセル)
-
15
VBA データ(特定値)のある最終行を取得したい
Excel(エクセル)
-
16
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
17
エクセル VBA 小数点を含む数字抽出について
Excel(エクセル)
-
18
i=cells(Rows.Count, 1)とi=cells(Rows.Count, 2)の違い
Visual Basic(VBA)
-
19
エクセルで別シートにリスト化した文字列を含むセルを持つ行を削除する方法を教えてください。
Excel(エクセル)
-
20
別ブックをダイアログボックスで指定してそこにあるシートをコピーしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロで最終行を取得してコピ...
-
VB.net
-
Excel VBA オートフィルタの結...
-
VBAで入力の結果を他のセルに反...
-
【VBA】条件に一致しない行を削...
-
エクセルで空白行を削除する ...
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
VBAで保存しないで閉じると空の...
-
マクロの保存先、開いてるすべ...
-
エクセルのvbaにて thisworkboo...
-
エクセルで、「いいね」のよう...
-
エクセルの、記録を終了したマ...
-
エクセル ボタンに設定したマク...
-
Excelのマクロでボタンを押すと...
-
エクセルでマクロ(Excel 4.0)...
-
エクセル関数>参照ファイル名...
-
エクセル;相対パスを絶対パスへ...
-
me10 マクロについて
-
【Excel】他ブックからOpenされ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
数値に見えるものはすべて数値...
-
エクセルのデータがない行には...
-
エクセルのVBAで指定した行数の...
-
VB.net
-
エクセルVBA任意の文字で検索し...
-
【至急】Excel 同一人物の情報...
-
【VBA】条件に一致しない行を削...
-
Excel VBAでオートフィルタで抽...
-
【VBA】条件に一致しない行を削...
-
マクロで最終行を取得してコピ...
-
エクセルで空白行を削除する ...
-
vbaエクセルマクロについて she...
-
Excel VBA オートフィルタの結...
-
空白を複数行一気に挿入するには?
-
【マクロ】A列最終行までを、カ...
-
エクセル住所録でフラッグの個...
-
マクロにて指定の文字間の文字...
-
エクセルで階層図を作る方法
-
VBAでsumif関数
-
エクセル VBAに関しての質問
おすすめ情報