
VBA初心者です。Excel2007、Windows7を使用しています。
A列からAG列、平均1000行程度の顧客データがあります。
1行目は見出しです。
その中でAB列が重複する場合、D列のみ結合したいです。
なお、結合する際、間に「,」を入れたいです。
例)
D E F ... AA AB
123 ○ × ... △ □
456 ○ × ... △ ■
789 ○ × ... △ □
上記の場合、D2が123789 D3が456 D4が123789
重複するセルは、続けてや、とびとびの場合もあります。
ご教授頂けないでしょうか。
宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
こんばんは!
>上記の場合、D2が123789 D3が456 D4が123789
とありますが
>なお、結合する際、間に「,」を入れたいです。
というコトですので、
D2・D4は
123,789
のように表示させてみました。
元データはSheet1にあるとします。
Sheet2を作業用のSheetとして使用していますので、
Sheet2は使っていない状態にしておいてください。
標準モジュールです。
Sub Sample1()
Dim i As Long, k As Long, lastRow As Long
Dim str As String, myRng As Range, wS As Worksheet
Application.ScreenUpdating = False
Set wS = Worksheets("Sheet2")
With Worksheets("Sheet1")
lastRow = .Cells(Rows.Count, "AB").End(xlUp).Row
Set myRng = Range(.Cells(2, "D"), .Cells(lastRow, "D"))
.Range("AB:AB").AdvancedFilter Action:=xlFilterCopy, copytorange:=wS.Range("A1"), unique:=True
For i = 2 To wS.Cells(Rows.Count, "A").End(xlUp).Row
.Range("AB:AB").AutoFilter field:=1, Criteria1:=wS.Cells(i, "A")
wS.Range("B:B").ClearContents
myRng.SpecialCells(xlCellTypeVisible).Copy wS.Range("B1")
str = ""
If wS.Cells(Rows.Count, "B").End(xlUp).Row > 1 Then
For k = 1 To wS.Cells(Rows.Count, "B").End(xlUp).Row
str = str & wS.Cells(k, "B") & ","
Next k
myRng.SpecialCells(xlCellTypeVisible).Value = Left(str, Len(str) - 1)
End If
Next i
.AutoFilterMode = False
.Columns("D:D").AutoFit
End With
wS.Cells.Clear
Application.ScreenUpdating = True
End Sub
こんな感じではどうでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 文字列を結合するときに重複をなくしたい 関数・VBA 2 2022/12/12 10:40
- Excel(エクセル) Excel2019 列と列(2列)の数値の重複を調べたい 1 2023/05/11 13:35
- Visual Basic(VBA) チームごとにどの商品を何個希望しているか数量を算出したいです。 A列(A2~A265)に各チーム名が 3 2023/07/18 18:46
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- Excel(エクセル) 結合セルのソートについて 5 2022/04/22 11:57
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Visual Basic(VBA) 指定列最終行までのスペースを改行するVBAについて 2 2022/06/01 19:50
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Excel(エクセル) Countifよりも早く重複数をカウントする方法ありますか? 18 2022/07/04 13:39
- Excel(エクセル) 重複データの抽出について 2 2023/07/21 14:52
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセル 文字数 多い順 並...
-
2つのエクセルのデータを同じよ...
-
EXCELで 一桁の数値を二桁に
-
文字列に数字を含むセルを調べたい
-
Excelで半角の文字を含むセルを...
-
エクセル(勝手に太字になる)
-
エクセルで文字が混じった数字...
-
VBAで文字列を数値に変換したい
-
「B列が日曜の場合」C列に/...
-
エクセルで最初のスペースまで...
-
エクセルの項目軸を左寄せにしたい
-
Excel、市から登録している住所...
-
エクセルで、列の空欄に隣の列...
-
エクセルの並び変えで、空白セ...
-
エクセルの関数(日数の平均の...
-
エクセルの列を範囲選択しての...
-
エクセルの表から正の数、負の...
-
オートフィルターをかけ、#N/A...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
Excelで半角の文字を含むセルを...
-
2つのエクセルのデータを同じよ...
-
エクセル 文字数 多い順 並...
-
EXCELで 一桁の数値を二桁に
-
エクセルの項目軸を左寄せにしたい
-
エクセルの表から正の数、負の...
-
エクセル(勝手に太字になる)
-
エクセルで最初のスペースまで...
-
エクセルで文字が混じった数字...
-
文字列に数字を含むセルを調べたい
-
「B列が日曜の場合」C列に/...
-
VBAで文字列を数値に変換したい
-
オートフィルターをかけ、#N/A...
-
エクセル 同じ値を探して隣の...
-
Excel、市から登録している住所...
-
エクセルで、列の空欄に隣の列...
-
【VBA】特定列に文字が入ってい...
-
エクセルの関数(日数の平均の...
おすすめ情報