質問

基本的に、私がやろうとしているのは、このExcelフォーミュラを持っていることです。

=IF(ISNUMBER(FIND(",",A1,FIND(",",A1,FIND("&",A1,FIND("&",A1))))+1),TRIM(MID(A1,FIND("&",A1,1)+1,FIND("&",A1,FIND("&",A1,1)+1)-FIND("&",A1,1)-1)),IF(ISNUMBER(FIND(",",A1,FIND(",",A1)+1)),TRIM(MID(A1,FIND("&",A1)+1,FIND("&",A1)-3)),IF(ISNUMBER(FIND("&",A1,FIND("&",A1)+1)),CONCATENATE(LEFT(A1,FIND(",",A1)-1),",",TRIM(MID(A1,FIND("&",A1,1)+1,FIND("&",A1,FIND("&",A1,1)+1)-FIND("&",A1,1)-1))),IF(ISNUMBER(FIND("&", A1)),SUBSTITUTE(A1,MID(A1,FIND(",", A1)+1,FIND(" &", A1)-FIND(",", A1)+2), ""),A1))))

気づいた場合、この部分:

=IF(ISNUMBER(FIND(",",A1,FIND(",",A1,FIND("&",A1,FIND("&",A1))))+1)

セルに2つのコンマと2つのアンパサンドが含まれているかどうかを言おうとしています。それ以外の場合は、何か他のことをするように指定します。残念ながら、この状態は予想どおりに動作しません。私は2つのコンマを備えたセルがあり、1つのアンパサンドしかありません:

CORNWALL,A ROBERT & CORNWALL,ANNA

これを真であると扱い、後続の真のステートメントを上記のセルに適用するため、後続の真のステートメントが上記のセルを説明しないため、値エラーを引き起こします。 2つのコンマと2つのアンパサンドを持つセルのみを占めています。私の最初の式で見ることができるように、上記のセルのもう1つのISNumber条件がすでにあります。

ISNumber条件を修正する方法はありますか?そのため、最初の実行レベルでは、セル内の2つのコンマと2つのアンパサンドの両方をチェックしますか?

応答してくれてありがとう。

役に立ちましたか?

解決

そこにあなたのコードの何が問題なのかを見ることができるかどうかはわかりませんが、アンパサンドとコンマの数を数えるために別のアプローチを試しましたか?

=IF(AND(LEN(A1)-LEN(SUBSTITUTE(A1,"&",""))=2,LEN(A1)-LEN(SUBSTITUTE(A1,",",""))=2),TRUECOND,FALSECOND)

これは少し簡単に思えます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top