質問: 以前にも似たようなことをお聞きしましたが、別対応しないといけなくなりました。宜しくお願いします。 <前提> ・Excelの1セル(Acessも同様)に、複数のEメールアドレスがある。 ・複数のEメールアドレスの場合、カンマにて区切られている。但し、そのEメールアドレスはアドレス帳に登録した情報のため、名前にカンマ登録していたら、名前にもカンマが入っている。 (例) 山田隆,koike,taka,~(以下後続アドレス) <行いたいこと> 最終的には、@以降のドメインのみを取得する。 <悩んでいること> アドレスが1つなら区切り文字を@にして分解すれば、決まった列に@以降の文字列がセットされるが、複数あると、@以降の文字列のセットがバラバラになってしまいます。 そこで、まず、複数のアドレスがあった場合、1セルに1アドレスになるよう何かしら関数などを使って行いたいのですが(私はカンマが1アドレスの区切りとなるので、まず、カンマにて分解しようとしたのですが、上記のように名前にもカンマがある場合があり、一定の法則がないため断念した)、良い方法ありますか。※何千件もあるのでハンド対応は厳しい そもそも、1セルに1アドレスに設定する必要性がない方法などありましたら、教えてください。 ・条件 excel,access ともに2002 or 3? 宜しくお願いします。
回答: VBAを使用して、正規表現を利用すれば、できるでしょう。 正規表現の利用方法が判らなければ、その状況を説明した、新しい質問をすることをお奨めします。