Excel - 各行の特定の単語を削除しますか?


3

Excelにすべての行の特定の単語を削除させる方法はありますか?たとえば、各行に{ファーストネーム} {ラストネーム}と夫人が表示され、それぞれの{ファーストネーム}を削除します。 (あるいは、最初の3つの単語と最後の単語を抽出し、それらを結合してもよい。)

ありがとうございます。

回答:


2

これが私の解決策です。部分的に使用するもの この

=LEFT(A6,FIND(" ",A6,FIND(" ",A6,FIND(" ",A6)+1)+1))&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ","")))))

これは最初の3単語と最後の単語を保持し、最初の3単語を "Mr. and Mrs."と仮定する必要はありません。あなたがより短いバージョンを使うことができると仮定するならば:

="Mr. and Mrs. "&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ","")))))

編集する :私の一番上の式とこれを使う(これは単に最初と最後の単語を与える):

=LEFT(A6,FIND(" ",A6))&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ","")))))

私たちはそれらをifステートメントと組み合わせることができます...どのifステートメントが最善であるか私にはわかりませんが、私たちが "。"の数を数えるところでどのように見えるかを示しましょう。文の中で。 2以上の場合は、最初の3単語と最後の単語を使用し、それ以外の場合は最初の単語と最後の単語のみを使用します。

IF(LEN(A6)-LEN(SUBSTITUTE(A6,".",""))>=2,LEFT(A6,FIND(" ",A6,FIND(" ",A6,FIND(" ",A6)+1)+1))&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ",""))))),LEFT(A6,FIND(" ",A6))&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ",""))))))

編集2: あなたがあなたの - そして - 解決策を使いたいなら、あなたはこの公式を使うことができます:

=LEFT(A6,FIND(" ",SUBSTITUTE(A6," and ","-and-")))&RIGHT(A6,LEN(A6)-FIND("@",SUBSTITUTE(A6," ","@",LEN(A6)-LEN(SUBSTITUTE(A6," ","")))))

うわー、それは素晴らしいです。私は、タイトルが1つしかない場合(例えば、 "夫人"だけなど)のインスタンスをどのように扱うか疑問に思いました。私の考えは一時的に "と"を " - と - "に置き換えて、すべてのタイトルが1つの単語として扱われるようにすることでした。それから最初と最後の言葉を守ります。そして最後に、 " - と - "を "と"に戻します。これを計算式に組み込む方法はおそらくあると思いますが、どこから始めればよいのかさえわかりません。ありがとうございます。
Dave

あなたの最後の解決策はまさに私が必要としているものです。再度、感謝します!
Dave

2

これが3番目の単語を見つけるための公式ですが、長い単語です:

=MID(MID(MID(SUBSTITUTE(A1," ","^",3),1,256),FIND("^",SUBSTITUTE(A1," ","^",3)),256),2,FIND(" ",MID(MID(SUBSTITUTE(A1," ","^",3),1,256),FIND("^",SUBSTITUTE(A1," ","^",3)),256))-2)

参照リンク ここに

今、これを1つの列に入れ、クリックしてドラッグしてから、この単語を削除する2番目の列を作成します。

実際には、あなたの特定のケースでは、あなたはこの式を使うことができます。

=LEFT(A1, 13) & RIGHT(A1,LEN(A1) - (13 + LEN(C1)))

もちろん、最初の式全体をC1に置き換えて、すべてを1つの式にすることもできます。


これは最初の3ワードが13文字であると仮定しています。
Jarvin

@ダン、はい、それが私が言った理由です in your specific case
Lance Roberts

1

上記のすべての解決策は素晴らしいです。しかし、これを行うための良い方法(John Smith氏が1つのコラムに書いていると仮定)は tools to columns から Data メニューと使い方 space 区切り文字として


すばらしいです!また、最初の空白文字の後に文字列を取る関数を使うこともできます。
kokbira

0

Ctrl + F、置換を選択し、 "Mr."(スペース文字を忘れないでください)を入力し、[置換]を空白にする必要があります。それからすべてを取り替えなさい。
Ctrl + F、replaceを選択し、 "Mrs."を入れ(スペース文字を忘れないでください)、replace withを空白にするそれからすべてを取り替えなさい。

この解決法は数単語で置き換えるのが速いですが、名前の中にない単語(例えば "James Amr。Kohn";この場合、おそらく "case sensitive"オプションで解決される)でのみ使われなければなりません。


0

Ctr + Fを使用して置換ツールを使用します。削除する単語を入力して[置換]をクリックします - 選択した単語は何も置き換えられません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.