@ A resposta de Jon é uma ótima solução VBA. No entanto ....
Veja o artigo de Jon Walkenbach sobre o que chamo de "pivotamento": link
Você usaria a técnica de Walkenbach para primeiro "desmembrar" seus dados em um layout de tabela normalizado. Então, como @Jon indica acima, você repete para obter o layout desejado.
Aqui está outro post neste fórum com um problema muito parecido com o seu: Eu tenho uma folha que tem 2 cols; em um é o nome, no outro há um ou mais emails, separados por vírgula
(Eu perdi a conta quantas vezes eu usei a técnica "depivoting" de Walkenbach. Com muito pouca prática você pode se tornar um especialista nisso.)