
初めて質問させて頂きます。
エクセルについての質問です。
バージョンは2002です。
複数ある行の中で、同じ数値がいくつかある場合、それを1行だけにする方法はありますでしょうか?
同じデータが複数ではなく1つだけにしたいのです。
___A____B____C___
1│330│220│520│
_________________
2│330│ 80│890│
_________________
3│330│ 72│ 69│
_________________
この様な場合、A列に同じ数値が入っている場合
1行のみ残したいのです。
何か良い方法ありましたら教えてください。
No.6ベストアンサー
- 回答日時:
やり方として
(1)VBA
(2)関数+ソート(手作業)削除
(3)フィルタ
の回答が出てます。
関数だけでやる方法を述べます。
重複削除とは=>初出をとる=>では「初出」をどう捕らえるか
結果で飛び行が出ないよう=>初出に連番を振り
連番だけ別のところに取り出す。
●捨てる・消す発想でなく、該当のものを別のところに抜き出す感覚。
簡単例で説明します。
A2:A13にデータがあるとします。文字列でも
同じです。
1
6
2
7
4
2
3
5
3
4
1
2
B1に0
B2に式=IF(COUNTIF($A$1:A2,A2)=1,MAX($B$1:B1)+1,"")
をいれB13まで式複写。
結果B1:B13は
0
1
2
3
4
5
6
7
これで初出行に連番が振れました。
F2セルに
=INDEX($A$2:$A$13,MATCH(ROW(A2)-1,$B$2:$B$13),0)
といれて、7+1行まで式を複写する。
E2:E8に
1
6
2
7
4
3
5
がでます。
上記E2:E8は別シートにもってくるのも可能です。
また元データが3列のデータであってもINDEX関数の第3引数を1,2にして、もってこれます。
このタイプの問題は過去に私が何度も答えています。
No.5
- 回答日時:
(1)
___A____B____C___
1│330│220│520│
_________________
2│ │ 80│890│
_________________
3│ │ 72│ 69│
_________________
上記のようにしたいのでしたら、
1. D1に=IF(COUNTIF(A$1:A1,A1)=1, A1, "")と入力してA列のデータ分下へコピー
2.D列をコピーしてA列に値の貼付け
空白を上に詰めたければ、A列で昇順に並べ替え
(2)
___A____B____C___
1│330│220│520│
_________________
2│ │ │ │
_________________
3│ │ │ │
_________________
のように、A列が重複していればB・C列も削除するのであれば、
1. D1に=IF(COUNTIF($A$1:$A1,$A1)=1, A1, "")と入力してE, F列にコピー。3列とも、A列のデータ分下へコピー
2.D~F列をコピーしてA~C列に値の貼付け
...これではダメでしょうか?
参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=1198519

No.4
- 回答日時:
1行を残すというのを、次のように理解しました。
A列について評価して、その結果、行全体を削除する。
A列のセルに対しての削除ではない。
Advance filter、すいません、英語版を使っています。
Data/Filter/AdvancedFilter
をそのA列の範囲に適用します。
対象エリヤと、比較エリヤを同じにして、
かつ、重複を削除を選びます。重複を削除はチェックマークを入れます。これが味噌です。
これで、期待通りの出力が一見得られます。
続いて全セル選択をして、別シートにペーストをすれば、最終的な出力となります。
(AdvancedFilterは、単に行を隠しただけです。これを
本当にいらない行を削除するには、小生は、上記のようにして実現していますが、それは、小生のPCの設定がそうなっているからなのかは、わかっていません。隠しただけの行を削除する件に関しては・・・・)
No.3
- 回答日時:
Sheet1のタブを右クリックして、コードの表示画面で次のコードコピー。
A列の同じ値を見つけて、最初を残し行削除します。
A列のデータがなくなったら、終了。
なお、もとの表が変わりますので、コピーした物で実行してください。
Sub GyouDelete()
Dim i, j As Integer
Dim X, Y, L As String
i = 1
X = "Dummy"
While X <> ""
X = Worksheets("Sheet1").Cells(i, 1).Value
Y = Worksheets("Sheet1").Cells(i + 1, 1).Value
While X = Y
L = (i + 1) & ":" & (i + 1)
Rows(L).Select
Selection.Delete Shift:=xlUp
Y = Worksheets("Sheet1").Cells(i + 1, 1).Value
Wend
i = i + 1
X = Worksheets("Sheet1").Cells(i, 1).Value
Y = Worksheets("Sheet1").Cells(i + 1, 1).Value
Wend
End Sub

No.2
- 回答日時:
泥臭いですが、私は以下のような方法で処理しております。
なお、A 列が重複チェックしたい列だと仮定しています。
1. A 列でソートします。
2.「2」行目の任意の空列に以下の数式を入れ、オートフィルで他列へも適用します。
---------
=IF(A2=A1,"★", " ")
---------
前行の A 列と比較して、同じであれば★印でマークするわけです。
3. 数式を入れた列をコピーし、[形式を選択して貼り付け] で値のみ上書き張付けします。
4. 数式を入れた列 (今は値だけになっていますが) でソートすれば、不要行が一定範囲に固まりますので、行の範囲指定で一括削除します。
元データの順番を崩したくない場合は、「1.」の作業の前に、各行へ連番を振っておき、「4.」の後でソートし直せばよいかと思います。
なお、老婆心ですが、Excel は操作ミスで直ぐにデータがくちゃくちゃになってしまいますので、バックアップは当然ですが、ご注意して作業下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2019 列と列(2列)の数値の重複を調べたい 1 2023/05/11 13:35
- 統計学 t検定について教えてください 2 2023/02/23 16:35
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Excel(エクセル) エクセルの大きなシートでグラフを見つける 4 2022/07/28 10:07
- Excel(エクセル) エクセルでこのようなことはできますか? 3 2022/07/10 19:57
- Excel(エクセル) Excelで、行に複数の数字が入力されているセルが複数の列存在し、行を跨いでセル内の数値を並び替える 5 2022/06/17 18:03
- Visual Basic(VBA) VBAで大量データの処理 3 2022/11/15 21:53
- Excel(エクセル) セルの値と同じ名前のシートのセルの結合を解除する方法を教えてください 3 2022/10/03 10:23
- Excel(エクセル) Countifよりも早く重複数をカウントする方法ありますか? 18 2022/07/04 13:39
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル ドロップダウンリスト...
-
特定のセルだけ結果がおかしい...
-
エクセル
-
エクセルのdatedif関数を使って...
-
【マクロ】アクティブセルの時...
-
【関数】同じ関数なのに、エラ...
-
エクセルの循環参照、?
-
【マクロ】A列にある、日付(本...
-
【マクロ】3行に上から下に並...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】WEBシステムから保存...
-
iPhoneのExcelアプリで、別のシ...
-
【エクセル】期限アラートについて
-
Excelファイルを開くと私だけVA...
-
Excelの新しい空白のブックを開...
-
Excelについての質問です 並べ...
-
マクロ・VBAで、当該ファイルの...
-
VBA チェックボックスをオーバ...
-
派遣会社とかハローワークとか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelファイルを開くと私だけVA...
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルのセルに画像は埋め込...
-
エクセルで、一部のセルだけ固...
-
【マクロ、画像あり】A表かB表...
-
エクセルでカウントする
-
【マクロ】コードを少しでも、...
-
VBA_日時のソート
-
エクセルで教えてください。 例...
-
エクセル 月間シフト表で曜日ご...
-
セルの左に余白を付ける
-
エクセル
-
エクセルについて教えてください
-
2枚のエクセル表で数字をマッチ...
-
ExcelのIF関数との組み合わせの...
-
エクセルのファイルのコピーを...
-
エクセルで二つのブックの違い...
-
空白処理を空白に
-
Excelのチェックボックスについ...
おすすめ情報