現在オフラインです。再接続するためにインターネットの接続を待っています

Excel で 2 つの列のデータを比較して重複を見つける方法

Office 2003 のサポートは終了しました

マイクロソフトでは、2014 年 4 月 8 日に Office 2003 のサポートを終了しました。この変更は、ソフトウェアの更新プログラムおよびセキュリティ オプションに影響しています。 この変更の意味および保護された状態を維持する方法について説明します。

概要
この資料では、Microsoft Excel ワークシートの 2 つの列のデータを比較して重複したエントリを見つけるために使用できる 2 つの方法について説明します。
詳細

方法 1 : ワークシートの数式を使用する

ワークシートの数式を使用して 2 つの列のデータを比較するには、次の手順を実行します。
  1. Excel を起動します。
  2. 新規のワークシートを開き、次のデータを入力します (列 B は空のままにします)。
    A1: 1   B1:     C1: 3A2: 2   B2:     C2: 5A3: 3   B3:     C3: 8A4: 4   B4:     C4: 2A5: 5   B5:     C5: 0					
  3. セル B1 に次の数式を入力します。
    =IF(ISERROR(MATCH(A1,$C$1:$C$5,0)),"",A1)
  4. セル B1:B5 を選択します。
  5. Microsoft Office Excel 2003 およびそれ以前のバージョンの Excel では、[編集] メニューの [フィル] をポイントし、[下方向へコピー] をクリックします。

    Microsoft Office Excel 2007 では、[編集] の [フィル] をクリックし、[下方向へコピー] をクリックします。

    列 B に重複している数値が表示されます。この例では次のように表示されます。
    A1: 1   B1:     C1: 3A2: 2   B2: 2   C2: 5A3: 3   B3: 3   C3: 8A4: 4   B4:     C4: 2A5: 5   B5: 5   C5: 0					

方法 2 : Visual Basic マクロを使用する

マイクロソフトは、この情報をプログラミング言語の使用方法の一例として提供するだけであり、市場性および特定目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。この資料は、例示されているプログラミング言語やプロシージャの作成およびデバッグに使用するツールについて理解されているユーザーを対象としています。Microsoft Support 担当者は、特定のプロシージャの機能についての問い合わせにはお答えできますが、ユーザー固有の目的に合わせた機能の追加、プロシージャの作成などの内容変更は行っておりません。

Visual Basic マクロを使用して 2 つの列のデータを比較するには、次の例に示す手順を実行します。
  1. Excel を起動します。
  2. Alt キーを押しながら F11 キーを押して、Visual Basic Editor を起動します。
  3. [挿入] メニューの [標準モジュール] をクリックします。
  4. モジュール シートに次のコードを入力します。
    Sub Find_Matches()    Dim CompareRange As Variant, x As Variant, y As Variant    ' Set CompareRange equal to the range to which you will    ' compare the selection.    Set CompareRange = Range("C1:C5")    ' NOTE: If the compare range is located on another workbook    ' or worksheet, use the following syntax.    ' Set CompareRange = Workbooks("Book2"). _    '   Worksheets("Sheet2").Range("C1:C5")    '    ' Loop through each cell in the selection and compare it to    ' each cell in CompareRange.    For Each x In Selection        For Each y In CompareRange            If x = y Then x.Offset(0, 1) = x        Next y    Next xEnd Sub					
  5. Alt キーを押しながら F11 キーを押して Excel に戻ります。
  6. 次のデータを入力します (列 B は空のままにします)。
    A1: 1   B1:     C1: 3A2: 2   B2:     C2: 5A3: 3   B3:     C3: 8A4: 4   B4:     C4: 2A5: 5   B5:     C5: 0					
  7. A1:A5 の範囲を選択します。
  8. Excel 2003 およびそれ以前のバージョンの Excel では、[ツール] メニューの [マクロ] をポイントし、[マクロ] をクリックします。

    Excel 2007 では、[開発] タブをクリックし、[コード] の [マクロ] をクリックします。
  9. [Find_Matches] をクリックし、[実行] をクリックします。

    列 B に重複している数値が表示されます。次に示すように、一致した数値が最初の列の隣に表示されます。
    A1: 1   B1:     C1: 3A2: 2   B2: 2   C2: 5A3: 3   B3: 3   C3: 8A4: 4   B4:     C4: 2A5: 5   B5: 5   C5: 0				
match data XL2000 XL2002 XL2003 XL2007
プロパティ

文書番号:213367 - 最終更新日: 06/14/2007 02:35:48 - リビジョン: 4.1

Microsoft Office Excel 2007, Microsoft Office Excel 2003, Microsoft Excel 2002 Standard Edition, Microsoft Excel 2000 Standard Edition

  • kbdtacode kbhowto kbprogramming KB213367
フィードバック
html>