Excelの列に重複する値を入力しないようにする場合は、この記事を参照してください。 ここでは、2つの簡単なアプローチを紹介します。
Excelワークシートを編集するときに、列のデータが一意であることを確認したい場合があります。つまり、列の値が重複しないようにします。 列に重複する値を入力するたびに、Excelに自動アラートを要求します。 以下、それを手に入れるための2つの簡単な方法を紹介します。
方法1:「データ検証」による防止
- まず、「列A」など、特定の列のすべてのセルを選択します。

- 次に、「データ」タブに移動し、「データツール」グループの「データ検証」ボタンをクリックします。
- 次に、ポップアップダイアログボックスの[設定]タブで、[許可]のドロップダウンリストから[カスタム]オプションを選択します。
- その後、「式」欄に以下の式を入力します。
= COUNTIF($ A $ 1:$ A $ 20、A1)= 1
- 後で、現在のダイアログボックスの「エラーアラート」タブに切り替えます。
- その後、エラータイトルとして「重複する値」を指定したり、「値が同じ列に入力されました!」など、必要に応じてエラーメッセージをカスタマイズできます。 エラーメッセージとして。
- 最後に「OK」をクリックします。
- 今、あなたはそれを試すことができます。
- まず、セルA1に値を入力します。
- 次に、セルA2に同じ値を入力します。
- すぐに、次のスクリーンショットのようなエラーメッセージが表示されます。
方法2:ExcelVBAで防止する
- まず、「」を参照してExcelVBAエディターをトリガーします。ExcelでVBAコードを実行する方法"
- 次に、「シート1(シート1)」のように、次のコードをシートのプロジェクトに配置します。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strTargetColumn As String
Dim nTargetRow As Integer
Dim nLastRow As Integer
Dim strMsg As String
strTargetColumn = Split(Target.Address(, False), "$")(0)
nTargetRow = Split(Target.Address(, False), "$")(1)
nLastRow = ActiveSheet.Range(strTargetColumn & ActiveSheet.Rows.Count).End(xlUp).Row
For nRow = 1 To nLastRow
If nRow <> nTargetRow Then
If ActiveSheet.Range(strTargetColumn & nRow).Value = Target.Value Then
strMsg = "The value has been entered in the same column!"
MsgBox strMsg, vbExclamation + vbOKOnly, "Duplicate Values"
Target.Select
Exit For
End If
End If
Next
End Sub
- それ以降、任意の列に関係なく、任意のセルに値を入力するたびに、マクロは同じ列の他の値を自動的にチェックします。 次の図に示すように、同じ値が見つかった場合はアラートが表示されます。
比較
| 優位性 | デメリット | |
| 方法1 | 操作しやすいです | 特定の列のデータのみを監視および処理できます |
| 方法2 | すべての列のデータを監視および処理できます | ウイルスまたはマルウェア攻撃のリスクを高める |
貴重なExcelデータを取り戻す
Excelは確かにクラッシュする傾向があります。 また、クラッシュするたびに、現在開いているExcelファイルがそよ風のように破損する可能性があります。 したがって、貴重なExcelデータの損失を回避するために、定期的にバックアップするだけでなく、注目に値するものを入手する必要があります。 xlsリカバリ などのツール DataNumen Excel Repair。 深刻なExcelデータの破損が発生した場合に役立ちます。
著者紹介:
Shirley Zhangは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 破損したmdf と見通し修理ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com





