[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『重複除き後の情報転記(マクロ)』(くるみ)
教えてください。
まず、E列にA列コードの重複を除いたものを表示したい。但し、B列の対象が×のものはその対象から外す。
(例えば「あ, お」は×があるが〇もあるため残す。「え」は×のみなのでE列に表示しない。
次に、F列に対応するコードのC列区分を入れたいが、条件として下記を反映したい。
・同一コードで区分が異なる場合は行が上のものを転記すればOK。「い」のケース
・同一コードで区分が空欄が一つでもあれば、空欄を優先させたい。
元データ
A列 B列 C列 コード 対象 区分 あ 〇 a い 〇 b あ 〇 う 〇 a え × b お 〇 あ × あ 〇 b い 〇 a お × a
結果表示
E列 F列 重複除き 区分
下記のような結果としたい
E列 F列 重複除き 区分 あ い b う a お
対象のものを重複削除してE列に表示する所までは出来たのですが、
F列に区分を表示する方法がわかりません。
マクロでやりたいですが、厳しかったら関数で考えてそれをマクロに埋め込むでもいいのですが、複雑でうまくいきません。
よろしくお願いします。
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
Sub test()
Dim dic As Object Dim i As Long Dim a As String, c As String Set dic = CreateObject("scripting.dictionary") For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(i, "B") <> "×" Then a = Cells(i, "A") c = Cells(i, "C") If dic.exists(a) = False Then dic(a) = c ElseIf c = "" Then dic(a) = c End If End If Next With Range("E2").Resize(dic.Count) .Value = Application.Transpose(dic.keys) .Offset(, 1) = Application.Transpose(dic.items) End With End Sub (缶ピー) 2023/03/05(日) 18:05:33
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.