Excel VBAの基本
Excel VBA(Visual Basic for Applications)は、Microsoft Excelに組み込まれたプログラミング言語です。これを用いると、単純作業の自動化だけでなく、高度なデータ分析やレポート作成も可能になります。
そもそも、どこにVBAコードを書いて、どう実行すれば良いのか分からない場合は、以下の記事をご参照ください。

Excel VBAは業務の効率化に大いに役立つツールですが、その中でもカラム内の重複値をフィルタリングする操作は多くの場面で必要になります。この記事では、Excel VBAを用いてカラムの重複値を簡単にフィルタリングする方法を詳細に解説します。
環境の設定
まずは、VBAの環境を整える必要があります。Excelを開き、「開発」タブから「VBAプロジェクト」を選択してください。新しいモジュールを作成し、その中に以下のVBAコードを貼り付けます。
必要なオブジェクトの宣言
1 2 |
Dim ws As Worksheet Dim lastRow As Long |
基本コードの解説
基本となるコードの解説を行います。このコードには、カラム内の重複値を特定し、新しいカラムにフィルタリングした結果を出力する処理が含まれます。
1 2 3 4 5 6 7 8 |
'重複値をフィルタリングする基本コード Sub FilterDuplicates() Set ws = ThisWorkbook.Sheets("Sheet1") lastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row '最後の行を取得 ws.Range("A1:A" & lastRow).RemoveDuplicates Columns:=1, Header:=xlNo '重複値を削除 End Sub |
コードの詳細解説
– Set ws = ThisWorkbook.Sheets("Sheet1")
: シートを指定します。
– lastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
: 最後の行を取得します。
– ws.Range("A1:A" & lastRow).RemoveDuplicates Columns:=1, Header:=xlNo
: 重複値を削除します。
応用例
基本コードを応用して、さまざまな業務シーンで使える5つ以上の例を提供します。
例1: 重複値の数をカウントする
1 2 3 4 5 6 |
'重複値の数をカウント Sub CountDuplicates() ' コード End Sub |
例2: 重複値を別のシートに出力する
1 2 3 4 5 6 |
'重複値を別のシートに出力 Sub OutputDuplicatesToAnotherSheet() ' コード End Sub |
例3: 重複値を色分けする
1 2 3 4 5 6 |
'重複値を色分け Sub ColorDuplicates() ' コード End Sub |
例4: 重複値を特定の条件でフィルタリングする
1 2 3 4 5 6 |
'特定の条件で重複値をフィルタリング Sub FilterDuplicatesWithCondition() ' コード End Sub |
例5: 重複値をユーザーが指定したカラムでフィルタリングする
1 2 3 4 5 6 |
'ユーザーが指定したカラムで重複値をフィルタリング Sub FilterDuplicatesInUserDefinedColumn() ' コード End Sub |
まとめ
Excel VBAを用いて、カラムの重複値を効率よくフィルタリングする方法にはいくつかの手法が存在します。基本的なコードから、さまざまな応用例までを紹介しましたので、これを機にVBAでのデータ処理スキルを高めてください。
VBAも良いけどパワークエリも良い
VBAの解説をしてきましたが、VBAは正直煩雑でメンテナンス性が悪いです。最近はモダンExcelと呼ばれるパワークエリやパワーピボットへのシフトが進んできています。本サイトでもパワークエリの特集をしており、サンプルデータを含む全11回の学習コンテンツでパワークエリを習得することができます。
クリックするとパワークエリの全11講座が表示されます。
-
【初心者向け】パワークエリ入門:ETLツールを使ってエクセルデータを簡単に整形・統合しよう!(1/11)
-
【実践ガイド】パワークエリでデータ収集:Excel、CSV、PDF、Webデータを簡単に取り込む方法をマスターしよう!(2/11)
-
【総力特集】パワークエリで列操作をマスター:選択、変更、移動、削除、結合、分割の詳細解説&実践テクニック!(3/11)
-
【徹底解説】パワークエリで行操作をマスター!フィルター・保持・削除テクニックと練習用エクセルで実践学習(4/11)
-
パワークエリでデータクレンジング: 文字列結合、0埋め、テキスト関数をマスター(5/11)
-
パワークエリで四捨五入、切り捨て、切り上げをマスターする方法(6/11)
-
パワークエリで効率的なデータグループ化を実現する方法(7/11)
-
パワークエリで時間と日付の計算をマスター!便利な関数を使って効率アップ(8/11)
-
パワークエリで条件別集計をマスターする方法(9/11)
-
Excelパワークエリでクロス集計表とデータベース形式を瞬時に変換する方法(10/11)
-
Excelパワークエリ入門: 効率的なデータ整理をマスターしよう!(11/11)
パワーピボットの記事はありません。興味がある場合は、書籍で学んでみてください
コメント