初めて質問させて頂きます。
エクセルについての質問です。
バージョンは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も見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
エクセル 重複 隣の列 一番上だけの数値を残す VBA
Excel(エクセル)
-
VBAで重複するデータがあれば1個だけ残して他の重複セルを"(空白)にしたいのですが
Excel(エクセル)
-
エクセルで複数行に散らばった同一人物の情報を一行にまとめたい
Excel(エクセル)
-
-
4
同列にある複数の同じ番号をひとつにまとめる関数
Excel(エクセル)
-
5
【Excel2010】複数行で重複するデータから最大値をひとつだけ抽出する
Excel(エクセル)
-
6
EXCELで2列を参照し、重複するものを横に並べたい
Excel(エクセル)
-
7
重複するIDのデータを1行にまとめるvbaのコード
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【関数】適切な文字数の数字を...
-
【関数】先頭だけにある、半角...
-
Excelのチェックボックスの使い...
-
エクセル 白黒印刷で白線を印刷...
-
LOOKUP関数を使えばいいのでし...
-
エクセルのセルに同じ大きさの...
-
エクセルの関数について教えて...
-
時間によってファイル名が変わ...
-
Excelのpivotについて質問です
-
excelの不要な行の削除ができな...
-
Excelで、決まった行を繰り返し...
-
WPS OFFICEでの縦書きについて
-
UNIQUE関数が使えないバージョ...
-
エクセルの条件付き書式につい...
-
エクセルで「-0.0」と表示さ...
-
Aというブックの1というシート...
-
VBA Private Sub Worksheet_Cha...
-
【マクロ】ファイル名の変更に...
-
【マクロ】エクセルにかいてあ...
-
excel で二つのどちらかを選ぶ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報