セルに特定の単語が含まれている場合にテキストを置換するExcelの式


0

私はこの巨大な式を回避しようとしていますが、誰か助けてもらえますか?

任意の値(屋外、屋内、3gの人工芝など)を含むセルB7があります。そのセルを検索し、そのセル内のテキストに値が含まれているかどうかを確認し、含まれている場合は置換しますが、含まれていない場合は次の値を確認します。

シンプルでしょ?

ここに私が持っているものがあります:

=IF(SEARCH("outdoor",E7),SUBSTITUTE(B7,"<format>","outdoor"),"")=IF(SEARCH("indoor",E7),SUBSTITUTE(B7,"<format>","indoor"),"")=IF(SEARCH("9-hole",E7),SUBSTITUTE(B7,"<format>","9-hole"),"")=IF(SEARCH("18-hole",E7),SUBSTITUTE(B7,"<format>","18-hole"),"")=IF(SEARCH("club",E7),SUBSTITUTE(B7,"<format>","club"),"")=IF(SEARCH("venue",E7),SUBSTITUTE(B7,"<format>","venue"),"")=IF(SEARCH("astroturf",E7),SUBSTITUTE(B7,"<format>","astroturf"),"")=IF(SEARCH("3g-astroturf",E7),SUBSTITUTE(B7,"<surface>","3G astroturf"),"")=IF(SEARCH("grass",E7),SUBSTITUTE(B7,"<surface>","grass"),"")=IF(SEARCH("hard-macadam",E7),SUBSTITUTE(B7,"<surface>","hard macadam"),"")=IF(SEARCH("concrete",E7),SUBSTITUTE(B7,"<surface>","concrete"),"")=IF(SEARCH("clay",E7),SUBSTITUTE(B7,"<surface>","clay"),"")=IF(SEARCH("indoor",E7),SUBSTITUTE(B7,"<surface>","indoor"),"")=IF(SEARCH("artificial",E7),SUBSTITUTE(B7,"<surface>","artificial"),"")=IF(SEARCH("synthetic-rubber",E7),SUBSTITUTE(B7,"<surface>","synthetic rubber"),"")=SUBSTITUTE(B7,"<venue>",A7)

助けていただければ幸いです。ありがとう


リストの単語はセルごとに1回だけ発生しますか、それとも複数回発生しますか?
スコットクレイナー

1
式の目的は何ですか?言葉の個人的な変化?「ボール」という単語のつづりを誤って「呼び出し」と呼んだとします。Ctrl + H、すべての単語を「呼び出し」、最終的にすべてを「ボール」に置き換えることができます。この式の背後にある理由を探る。
ejbytes

関係を明示的に示すために、印刷画面を表示しないのはなぜですか。あなたの言葉は見物人に多くの推測を残しました。あなたがしようとしていることを誰かが見たら、彼/彼女はより簡単な解決策を思いつくかもしれません。
ejbytes

また、20個のelse'ifのifステートメントを作成する代わりに、明示的に必要なものをリストすることも役立ちます。代わりに、B7にbeefという単語がある場合は、beefをchickenに置き換えます。擬似コードのリスト。
ejbytes

回答:


4

単語のリストを他のセルに入れます:

ここに画像の説明を入力してください

次に、配列数式でこれらのセルを参照します。

=TRIM(SUBSTITUTE(A1,INDEX($G$1:$G$3,MATCH(TRUE,ISNUMBER(SEARCH($G$1:$G$3,A1)),0)),""))

配列数式であるため、編集モードを終了するときは、Enterの代わりにCtrl-Shift-Enterで確認する必要があります。適切に行われると、Excelは{}数式を囲みます。

これは、ターゲットテキスト文字列で見つかったリストの最初の単語のみを置き換えます。リストに2つ以上の単語が存在する場合、他の単語は残ります。

ここに画像の説明を入力してください

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