• ベストアンサー

文字列の検索 集計

エクセルデータにて     A      B      C 1  ABC    ○○○    XYZ 2  ABC    ○○○    PQR 3  DEF    ×××    XYZ 4  DEF    ×××    PQR 5  DEF    ×××    HIJ *アルファベット、記号は文字列 において、下記形式にしたい場合はどの様な手法がありますでしょうか?     A      B      C 1  ABC    ○○○    XYZ PQR    2  DEF    ×××    XYZ PQR HIJ その際、Cに表示させる方法は、1)連続形式、2)カンマ区切り、3)別列の追加 が考えられると思いますが、どの形式でも構いません。(理想は2ですが) 初心者質問ですが、宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#176215
noname#176215
回答No.1

   A    B    C       D      E 1 2 ABC ○○○ XYZ XYZ PQR     1 3 ABC ○○○ PQR PQR 4 DEF ××× XYZ XYZ PQR HIJ 1 5 DEF ××× PQR PQR HIJ 6 DEF ××× HIJ HIJ 1列挿入し データを A列昇順に並べ替え ■D2セル =IF(A2=A3,C2&" "&D3,C2) ■E2セル =IF(A1=A2,"",1) D2:E2セルを選択して フィルハンドルをダブルクリック E列にオートフィルタを設定して「1」を抽出 必要なら範囲選択してコピーし 別セルに貼り付け

その他の回答 (1)

  • pkh4989
  • ベストアンサー率62% (162/260)
回答No.2

マクロです。試してみてください。 Sheet2へ展開されます Sub test()   Dim cCD     As String   Dim mR     As Long   Dim wR     As Long   Dim wVal(3)   As String   Dim EditR    As Long   '   With ActiveSheet     mR = Range("A" & Rows.Count).End(xlUp).Row     cCD = ""     EditR = 0     For wR = 1 To mR       If cCD <> .Cells(wR, 1) Then         If cCD <> "" Then           EditR = EditR + 1           With Worksheets("Sheet2")             .Cells(EditR, 1) = wVal(1)             .Cells(EditR, 2) = wVal(2)             .Cells(EditR, 3) = wVal(3)           End With         End If         cCD = .Cells(wR, 1)         wVal(1) = .Cells(wR, 1)         wVal(2) = .Cells(wR, 2)         wVal(3) = .Cells(wR, 3)       Else         wVal(3) = wVal(3) & "," & .Cells(wR, 3)       End If     Next     '     EditR = EditR + 1     With Worksheets("Sheet2")       .Cells(EditR, 1) = wVal(1)       .Cells(EditR, 2) = wVal(2)       .Cells(EditR, 3) = wVal(3)     End With   End With End Sub

関連するQ&A