dポイントプレゼントキャンペーン実施中!

メールアドレスの内、ドメイン名(@以下)でソートしたい。
abc@x.j.m
efgh@hj.i.r
i123.kl@nn.h.j.l

@は意図的に全角に直しています。
また、桁数は不ぞろいです。
Word2013が希望ですが、難しいならExcel2013 でも可とします。

A 回答 (3件)

WordやExcelでなら、区切り記号としての半角の@記号で分割した表を


使えば、ソートすることも簡単です。

Wordの場合なら、タイトル行を用意しメール一覧の範囲を選択します。
その状態で、[挿入]タブにある[表]の▼から[文字列を表にする]を選択
します。

[文字列を表にする]ダイアログで[列数]を[ 2 ]にしておきます。
[文字列の区切り]として[その他]を選択して、右側のボックスに半角の
[@]を記入します。

半角の@が区切り位置となり、2列目にドメイン名が分割されます。
これを[並べ替え]で2列目を指定してソートをします。

タイトル行を用意したのは、ソートの結果として[ある]と[ない]とでは
結果が違う場合があるためです。
できれば、タイトル行があるほうが結果が正しくなることが多いので、
用意したほうがベターです。

ソートできたら、[表の解除]をするときに[文字列の区切り]を[その他]
にして半角の@で解除すれば、元メールの状態に戻ります。
「@以下をソートしたい」の回答画像2
    • good
    • 0
この回答へのお礼

希望のWordによる方法をお示しいただきありがとうございます。
この中で、[文字列を表にする]を教えてもらいました。
しかし、sortにはExcelの方が慣れの問題もあり、やりやすい印象です。
最初に言われた、区切り記号という語句から、Excelで、データ―区切り位置で@の前後を区切る方法を見つけること出来ました。

お礼日時:2014/06/11 20:22

こんばんは!


Excelでの一例です。

↓の画像のように1行目はダミーで項目行を作っておきます。
B2セルに
=MID(A2,FIND("@",A2)+1,20)
という数式を入れフィルハンドルでダブルクリック
その後B列を1行目から範囲指定 → 右クリック → コピー → そのまま右クリック → 「形式を選択して貼り付け」
→ 「値」を選択しOK
(数式によって表示されているデータでは並び替えができません)

最後にデータ → 並び替え → 最優先されるキーをB列にし昇順で並び替えを行います。
最後のB列を削除して完了です。m(_ _)m
「@以下をソートしたい」の回答画像3
    • good
    • 0
この回答へのお礼

コメントありがとうございます。
ただ、下の式若干面倒と、おもいます。
=MID(A2,FIND("@",A2)+1,20)
No.2さんへ書きましたが、データー区切り位置の方が簡単に行くように思いました。

お礼日時:2014/06/11 20:35

@よりも右側の文字を取り出して、それをソートしてあげればよいかと思います。



@よりも右側の文字を取り出す方法は次の通りです。
※A1に「abc@x.j.m」が入っているとして進めます。

RIGHT関数で、@よりも右側の文字を取り出します。
そうするためには、@よりも右側も文字数がわからなければなりません。

@よりも右側の文字数は、全体の文字数から@までの文字数を引いたものです。

「abc@x.j.m」の場合ですと、全体の文字数が9文字です。
そして@までの文字数は4文字です。
@よりも右側の文字数は8文字-4文字=4文字となります。

全体の文字数はLEN関数で調べることができます。
=LEN(A1)

@が何文字目にあるかは、SEARCH関数で調べることができます。
=SEARCH("@",A1)

これらを組み合わせると、

=RIGHT(A1,LEN(A1)-SEARCH("@",A1))

という関数になります。

これで@よりも右側の文字を抜き出すことができます。
この関数をB列にはりつけて、B列をソートすれば完成です。

Wordには、Excelのデータを貼りつけることができます。
Excelでソートしたものをコピーし、Wordに貼り付けてください。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございました。
答えの一つになること確認できました。
ただ申し訳ありませんが、式の作成がチョット面倒と言った印象です。

お礼日時:2014/06/11 17:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!