Excelの関数について質問です。C1からCX100まで1000個のセルにそれぞれメールアドレスが入力(空白もあり)されていて、A列に重複するメールアドレスの多い順番に並べてB列に何個重複しているかを数値で表したいです。何度も関数を使って加工すれば私でもできるのですが、一回の関数で対応可能でしょうか?またはマクロを使えば対応可能でしょうか?AIで質問してみたのですが、エラーになってしまいました。よろしくお願いします。

Excel

1件の回答

回答を書く

1175583

2026-04-29 16:55

+ フォロー

最新のExcelなら数式でも簡単だが、古めのExcelならマクロがいいと思います。少し多めにC1:CX200を対象にしています。





Sub test()

Dim i As Long, r As Range, dic As Object

Set dic = CreateObject(\u0026quot;Scripting.Dictionary\u0026quot;)

Columns(\u0026quot;A:B\u0026quot;).ClearContents

For Each r In Range(\u0026quot;C1:CX200\u0026quot;)

If r \u0026gt; \u0026quot;\u0026quot; Then dic(r.Value) = dic(r.Value) + 1

Next

Cells(1, 1) = \u0026quot;メールアドレス\u0026quot;: Cells(1, 2) = \u0026quot;データの個数\u0026quot;

Cells(2, 1).Resize(dic.Count) = Application.Transpose(dic.keys)

Cells(2, 2).Resize(dic.Count) = Application.Transpose(dic.items)

Cells(2, 1).Resize(dic.Count, 2).Sort Cells(2, 2), xlDescending, Header:=xlNo

End Sub

うったえる有益だ(0シェアするブックマークする

関連質問

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有