人生でいちばんスベッた瞬間

【やりたい事】
以下画像をご覧ください
左の表から右の表のようにしたいです
マクロにて①と②のいずれかorどちらもわかる方いましたら

コードorコードのヒントを教えて下さい

①A列にて重複する行を色を付け、表の1番下へ切取り貼付する
※色はなんでも良いです
例 A列1 B列い の行を最終行へ移動し、色を付ける
A  B
1 あ
1 い

②B列にてA列が重複する行の、内容を1つにする
例 重複して残す行の方に、内容をくっつける。 あい とする
A  B
1 あ
1 い

「【マクロ】重複する同じ行を、削除でなく1」の質問画像

A 回答 (4件)

こんにちは



>コードorコードのヒントを教えて下さい
方法はいろいろあると思いますが、一番わかりやすいのは、ご質問文通りにA列について順に判断して処理してゆけば良さそうです。
漠とした質問をするよりも、わからないところを具体的に記した方が、適切なヒントを得られると思います。
もしも、全体的にわからないのなら、仮に、ヒントを貰ったところでできないと思います。

行の移動を行う場合は、都度移動すると結果的に行がずれるのでわかりにくくなります。
最後にまとめて移動するか、コピペしてから元を削除する方が賢明です。


例えば、こんな感じとか。
ただし、以下のロジックでは空白セルは別物と見做しますので、A列に空白セルが含まれる場合は、全てユニークなものとして残ります。

Sub sample()
Dim u As Range, lastc As Range, c As Range
Dim rw As Long

Set lastc = Cells(Rows.Count, 1).End(xlUp)
For rw = 1 To lastc.Row
Set c = Cells(rw, 1).Resize(, 2)
If Application.CountIf(Cells(1, 1).Resize(rw), c(1).Value) > 1 Then
If u Is Nothing Then Set u = c Else Set u = Union(u, c)
End If
Next rw

If Not u Is Nothing Then
u.Interior.Color = rgbGainsboro
u.Copy lastc.Offset(1)
u.Delete xlShiftUp
End If
End Sub
    • good
    • 0
この回答へのお礼

いつもコードありがとうございます
うまく、シンプルにうごきました
参考にさせて頂きます

お礼日時:2025/01/22 07:18

下記へアップしました。


https://ideone.com/IN7Aic

列数を変える場合は、
Dim lastCol As Long: lastCol = 10 '最終列番号
を変えてください。
    • good
    • 0
この回答へのお礼

コードありがとうございます
大変、参考になりました

お礼日時:2025/01/22 07:19

不明点です。


1.A列とB列のデータが例として提示されていますが、
実際は、C列、D列などにもデータがあるのでしょうか。
もし、あるなら、そのデータも行を移動するとき、一緒に移動しないといけません。
実際は、何列まで、データがあるのでしょうか。

2.お客様番号が空白(未記入)のデータはありますか。
例えば、以下のようなケースです。
お客様番号 内容
1     あ
1     い
未記入   う    ・・・①
未記入   未記入  ・・・②
2     え
3     お

①と②の行のデータです。
もし、ある場合は、どのように扱えばよいのでしょうか。
    • good
    • 0
この回答へのお礼

ご質問、ありがとうございます

実際は約10列おどありますが
がっちゃんこしたいデータはB列の内容です

お客様番号は、連続しておりまして、未記入は
ありません

ご指導、宜しくお願いします

お礼日時:2025/01/15 21:23

連想配列(Dictionaryオブジェクト)を利用するといいです。



0.連想配列を準備する
1.表を上から見ていく
1-1 その行のお客様番号が配列に入っている?
Yes→その行に色を付け、配列に入っている行番号の行に内容を統合する
No→お客様番号をキー、行番号をアイテムとして配列に格納
1-2 次の行へ(最後まで繰り返し)
2.色の付いた行を下に移動する

Yesで行移動してもいいんですが、
そうすると行がずれて間違いの元なので、
後で移動するのがおすすめです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A