• 締切済み

エクセルでメールアドレスと抽出したい

同じセルに A1セルに AAAA@gmail.com BBBB@gmail.com と2つのメアドが入っている。 B1セルに AAAA@gmail.com C1セルに BBBB@gmail.com としたい場合どのようにやればいいでしょうか? どうぞよろしくお願いいたします。

  • Gmail
  • 回答数6
  • ありがとう数6

みんなの回答

回答No.6

【お詫びに】No.4さんの回答のキモを確認する一つの手法を紹介しておきます。 回答のキモは、区切り子=CHAR(10)だってことです。で、それを確認することは、標準モジュールに以下の関数を登録するで可能になります。 Public Function GetAscCode(ByVal strText As String, ByVal N As Integer) As Long   GetAscCode = Asc(Mid(strText, N, 1)) End Function 添付図では、B1でA1の改行コードのAsciiを求めています。No.4さんの回答は次のように書き換えても同じ結果を得られます。 =MID($A1,1,FIND(CHAR(GetAscCode(A1,15)),$A1)-1) つまり、キモは Ascii code=10 だということです。 なお、CutStr()は、標準モジュールに登録している関数です。 Public Function CutStr(ByVal Text As String, _             ByVal Separator As String, _             ByVal N As Integer) As String   Dim strDatas() As String   If N > 0 Then     strDatas = Split("" & Separator & Text, Separator, , 0)     CutStr = strDatas(N * Abs(N <= UBound(strDatas)))   End If End Function

回答No.5

【先の回答は、全面的に撤回】 =CutSTr(A1,CHAR(10), 1) =CutSTr(A1,CHAR(10), 2) でもOKでした。 CHR(10)⇒CHAR(10)  ↑ 単なる無知ゆえのミスでした。No4さんと同じやり方で、私はCHR(10)でテストしたってこと。で、参照すると改行しないということ。ALT+ENTERで入力した時だけ改行するってこと。どっちも、知りませんでした。ですから、先の回答は、全面的に撤回します。

  • STICKY2006
  • ベストアンサー率29% (1536/5269)
回答No.4

1.「テキストエディタ」を起動する。 2.「A1」セルを「コピー」する。 3.「テキストエディタ」に「貼り付け」る。 4.「"」が先頭と末尾にくっついた状態になるので、「"」を「BackSpace」等で消す。 5.「4.」で消した状態の2行を選択し、「コピーする」 6.「B1」セルを選択し、「貼り付け」る。 データの量が多いとかでしたら、「4.」で、テキストエディタの「置換」機能とか使えばいいと思いますよ。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.3

A1セルに入っているデータが、改行文字等のデータとともに、はっきりと分からないとうまくいかないかも知れませんが、以下の式を使ってみてください。 B1セルに、=MID($A1,1,FIND(CHAR(10),$A1)-1) C1セルに、=MID($A1,FIND(CHAR(10),$A1)+1,200)

回答No.2

Excelに関しては無知の私。無謀にも、課題に挑戦。 >Chr(10)で切り分けりゃー、出来るさ! が、見事に失敗。で、B1=A1で確かめると B1=AAAA@gmail.comBBBB@gmail.com と、どこにもvbLfはありゃーしない。そういうことで、添付図のような式になった次第です。これで、後は MID()とFIND()の組み合わせで達成できると思います。

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.1

A1セルの2つのメールアドレスの区切りには何が入っていますか? スペース?改行? それが解ればその区切りの前後で文字列を取り出すことが可能です。

関連するQ&A

  • chromeのブックマークとアカウント

    PCのchromeで私Aが aaaa@gmail.comでログインしていてブックマークバーが出ているとします。 ここで友だちBさんが遊びに来てaaaa@gmail.comをログアウトして自分のbbbb@gmail.comでログインするとします。予想でブックマークバーはBさんのものになると思いましたが以前私Aのブックマークです。Bさんのブックマークバーにするにはどうすればよいのでしょう

  • Outlook Expressの受信トレイにあるメールから

    Outlook Expressの受信トレイにあるメールから MSMAPI経由でメールの内容を取得するプログラムを作っています。 困っているのはmapiMess.RecipAddressを使って取得できる アドレスについてで、メールのヘッダ情報が以下のような場合… Reply-To: aaaa@a.co.jp, bbbb@b.co.jp mapiMess.RecipAddressで取得すると"aaaa@a.co.jp"が取得されます。 ですが、bbbb@b.co.jpの方を取得したいのです。 一方、ヘッダ情報が以下のような形式の場合 Reply-To: aaaa@a.co.jp, bbbb@b.co.jp To: bbbb@b.co.jp きちんと"bbbb@b.co.jp"が取得できます。 ヘッダ情報をPG側で分解して…とも思ったのですが、そもそも取得できるのでしょうか? もしくは、上記説明でいう"bbbb@b.co.jp"の方を取得できる方法はあるのでしょうか? もしお分かりの方がいらっしゃればご教授願います。 環境:WinXp(SP3)、VB2005+MSMAPI

  • エクセルで入力文字に併せて参照したい

    エクセルでの質問ですが、 例えば、 A1のセルに、 AAAAと入力した場合、 B1のセルにJAPAN BBBBと入力した場合、 B1のセルにUSA CCCCと入力した場合、 B1のセルにUK と表示をさせたいのです。 また同時に、AAAAでもBBBBでもCCCCでもない文字が、 A1に入力された場合は、 A2のセルを参照するようにしたい ※A2のセルはそれ以外のものを直接入力出来るようにするためです。 以上 宜しくお願い致します。

  • エクセルでシート間に少し複雑なリンクをさせたい

    エクセルで二つのシートをリンクさせて作業を簡単にしたいと思っています そのリンクが少し複雑になってしまい、自分ではよくわからないのでぜひ教えていただきたいです まずシート1に以下のような表を作ります   8:00 9:00 10:00 11:00 ・・・ 21:00 22:00 A aaaa aaaa            bbbb bbbb B C Aという人物がaという道具を8時から10時に、bという仕事を21時から22時に借りたという意味です さらにシート2に道具ベースの表を作ります   8:00 9:00 10:00 11:00 ・・・ 21:00 22:00 a AAAA AAAA b                   AAAA AAAA c aという道具を8時から10時にAが借り、bという道具を21時から23時にAが借りたという意味です 1時間15分間隔で4つのセルを使っています。 表はすでにできているのですが、この2枚のシートを互いにリンクさせ、1枚に入力したらもう一枚にも自動的に記入できるようにさせたいのですが、やり方がわかりません。 うまいやり方が分かる方がいれば教えていただきたいです。よろしくお願いします。

  • 抽出方法が分かりません

    Excelで     A       B       C 1 A社【コード5505】 2 商品コード    数量     売上高 3 aaaa       100      10000 4 bbbb       150      10000 5 6 B社【コード5509】 7 商品コード    数量     売上高 8 bbbb       80      800 9 10 C社【コード1304】 11 商品コード    数量     売上高 12 fffff       20     10000 という表があり、B社【得意先コード5509】の販売した「bbbb」の数量「80」を抽出したいと思います。 普通にVLOOKUPを使用するとA社も「bbbb」を販売しているため、この場合、関数は何を使用すればいいでしょうか?

  • 「指定したアドレス以外なら、」という条件

    私はoutlookを使っていて二つのアカウント(aaaa@xxx.com、bbbb@xxx.com)でメールを受信しているのですが 迷惑メールはこの二つのアカウント以外のアドレスが混ざっていたり、 宛先がこの二つのアカウント以外のアドレスだったりするので 宛先が aaaa@xxx.com bbbb@xxx.com 以外なら、ゴミ箱へ移動する という仕訳ルールは作れますか? 当方アウトルック2010です。 ご教授よろしくお願いします。

  • 相対アドレスについて

    実行ファイルが以下のようなディレクトリに 置かれています。 \hoge ├a.exe ├\aaaa │ ├b.exe │ └\bbbb └\bbbb a.exeの中でb.exeを呼び出します。 b.exeの中で相対アドレスでbbbbを指定したところ hoge直下のbbbbを指定したように動作します。(aaaa直下のbbbbではなく!) どこかの中から呼び出されたexeの指定する相対アドレスは はじめに起動したexeからの相対アドレスになるのでしょうか? それともこれは環境によるのでしょうか? a.exeはhspで、b.exeはcで作っています。

  • データを抽出し、フラグを立てる

    E列に入力する関数でも、マクロでも良いので、E列にフラグを立てるようにしたいです。 複雑でうまく説明出来ていないかも知れませんが、どうぞよろしくお願いいたします。 1. C列が「C'」から始まるものがあれば、その行のセルAを見る。 2. A列に同じ数字がないか探す。あった場合、その行のセルCが何の文字から始まるかを見る。 3. そのセルCが、"A","B","D","E","F"で始まる場合、1.で最初に見たC'から始まるセルCと   同じ行のセルEに、セルCの値を入れる。 【実行前】 A列    B列    C列      D列    E列 222    AAAA   C'あああ   ABC 222    HHHH   Bととと    QWN 333    GGGG   ウウウ    DGG 111    BBBB   C'ううう    FUI 444    CCCC   C'えええ   KOL 444    KKKK   C'おおお   MYT 444    LLLL   C'おおお   REF 999    DDDD   イイイ     VGC 777    EEEE   C'ききき    XSH 777    UUUU   Fかかか   ZOL 【完成イメージ】 A列    B列    C列      D列    E列 222    AAAA   C'あああ   ABC   C'あああ 222    HHHH   Bととと    QWN 333    GGGG   ウウウ    DGG 111    BBBB   C'ううう    FUI 444    CCCC   C'えええ   KOL 444    KKKK   C'おおお   MYT 444    LLLL   C'おおお   REF 999    DDDD   イイイ     VGC 777    EEEE   C'ききき    XSH   C'ききき 777    UUUU   Fかかか   ZOL

  • エクセルについての質問。

    エクセルの関数に関して質問があります。 |10001|AAAA|10002|BBBB| |10002|BBBB|10004|DDDD| |10003|CCCC|10004|DDDD| |10004|DDDD|10001|AAAA| |10005|EEEE|10005|EEEE| ちょっと分かりにくいですが 一番上の行ですと、 列A=10001 列B=AAAA 列C=10002 列D=BBBB と考えて下さい。 質問です。 --------------------------- 列Cの数値を列Aから検索して 同じのがあれば列Bの数値を列Dに表示する。 --------------------------- この関数を教えて頂けませんでしょうか? 宜しくお願い致します。

  • エクセルで重複しているデータの抽出のしかたを教えてください。

    エクセルで重複しているデータを抽出したいのですが・・。なにぶん初心者なもので簡単な方法があればよいのですが・・。 A列に日付 B列に企業名このデータが300件ほどあります。  Å列      B列 1月 1日    AAAA社 1月 4日   BBBB社 1月 8日   CCCC社 2月 1日   BBBB社 2月20日    DDDD社 3月 2日   AAAA社 と、あるとしてB列の企業名が重複しているものを抽出したいのですが・・・。この場合 AAAA社とBBBB社ですが。 これを簡単に抽出する方法はないでしょうか? 教えてください お願いいたします。