エラーが発生した場合に別の数式を使用する方法


0

この順序で、セルに次の数式を実行します。 前の式でエラーが返された場合

=MID(P2,SEARCH("q=",P2)+2,SEARCH("&",P2)-SEARCH("q=",P2)-2)

=MID(P2,SEARCH("p=",P2)+2,SEARCH("&",P2)-SEARCH("p=",P2)-2)

=RIGHT(P2,LEN(P2)-FIND("q=",P2)-1)

=RIGHT(P2,LEN(P2)-FIND("p=",P2)-1)

これをどのように定義できますか?


欲しいものが明確ではありません。複数の条件でP2を評価し、あなたが述べた順序に基づいて最後の良い値を返すセルのための単一の式を求めていますか?
Tyson

1
どうしてあなたはただあなたに固執しなかったのか その他の質問 。前の詳細なしで2番目の質問をすることは混乱を招きます。
Tyson

決して気にしないで、私は複数でそれを行うことができた IFERROR の中 IFERORR=IFERROR(MID(R167,SEARCH("q=",R167)+2,SEARCH("&",R167)-SEARCH("q=",R167)-2),IFERROR(MID(R167,SEARCH("p=",R167)+2,SEARCH("&",R167)-SEARCH("p=",R167)-2),IFERROR(RIGHT(R167,LEN(R167)-FIND("q=",R167)-1),IFERROR(RIGHT(R167,LEN(R167)-FIND("p=",R167)-1),zzzzzz))))
rockyraw

同じ種類の問題を抱えている可能性がある人や、質問に再回答するのに時間を費やす可能性がある人のために、解決策を回答に入れて解決済みとマークしないでください。
fixer1234

あなたの質問が解決されたら、それが答えられたことを示すために答えの隣のチェックマークを必ずクリックしてください
Raystafarian

回答:


1

私はIFERRORの中の複数のIFERRORでそれをすることができました:

=IFERROR(MID(R167,SEARCH("q=",R167)+2,SEARCH("&",R167)-SEARCH("q=",R167)-2),IFE‌​RROR(MID(R167,SEARCH("p=",R167)+2,SEARCH("&",R167)-SEARCH("p=",R167)-2),IFERROR(R‌​IGHT(R167,LEN(R167)-FIND("q=",R167)-1),IFERROR(RIGHT(R167,LEN(R167)-FIND("p=",R16‌​7)-1),zzzzzz))))


式全体をテストするのではなく、エラーになる可能性がある関数のみをテストしてください。そのため、検索式を "iferror"にすることができます。
agtoever

0

を使う IFERROR() 式は良い選択肢です。ただし、巨大な式を1つ使用することは避けてください。悪い習慣があります。式がうまくいくと、デバッグには大きすぎます。私は4つの別々のコラムでこれを選びます

A2

=IFERROR(MID(P2,SEARCH("q=",P2)+2,SEARCH("&",P2)-SEARCH("q=",P2)-2),0)

B2

=IF(A2=0,0,MID(P2,SEARCH("p=",P2)+2,SEARCH("&",P2)-SEARCH("p=",P2)-2))

C2

=IF(B2=0,0,RIGHT(P2,LEN(P2)-FIND("q=",P2)-1),0)

D2

=IF(C2=0,0,RIGHT(P2,LEN(P2)-FIND("p=",P2)-1),0)

そして最後に簡単な SUM 十分であろう

E2

=SUM(A2:D2)

列を非表示/グループ化できます A D しかし、このようにあなたは答えがどのように見られる

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