これはVBよりもPower Queryに向いていますね。Power Queryでよければ以下のような方法があります。英語環境を使っているので、適当に読み替えてください。
まず元のデータを選択して、メニューから[Insert]->[Table]を選んでテーブル化します。
そうすると新しいテーブルにはTable1という名前がつくはずなので、それを前提に話を進めます。
次に[Data]->[New Query]->[Blank Query]を選ぶとクエリーエディタが開きます。
[Advanced Editor]で以下のように入力してください。
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
Summary = Table.Group(Source, {"ID"}, {{"Column", each Text.Combine([名前], ","), type text}})
in
Summary
最後に[Close & Load]を押して終わりです。ちなみに上記のqueryは手打ちで動作確認しておりませんので、もしエラーになったら画像の方を参考にしてください。Power QueryはVBAと違って大文字小文字を区別しますのでご注意ください。