Excelの式からの異常な動作


1

私は以下を機能させることができました:

=IFERROR(INDEX(CUSIP2,SUMPRODUCT(ISNUMBER(SEARCH(CUSIP2,O2))*ROW($2:$5158))),"")

これは、セルの内容をリストと照合し、リストの単語がセル内のどこかにある場合、それがどの単語であるかを教えてくれます。すばらしいです!理想的には、セルに一致するものがない場合も空白になります。これは私が問題に直面しているところです。

一致する場合、完全に機能します。一致しなければ、空白を与える代わりにランダムな単語を投げます。たとえば、「BANKのCLIENTの送信ワイヤ-SYSTEMにポストされていないオフセットエントリ」のセルにSWPC12374が表示されます。

今、謎が深まります。スローされる間違った言葉は常に異なります。スローされる間違った単語は、リストのどこにあるかに直接対応します。たとえば、[WORD 1]は、方程式がある最初のセルにスローされ、空白になるはずです。[WORD 2]は、方程式のある2番目のセルにスローされます。また、空白になるはずです。その他[WORD 1]および[WORD 2]はリストCUSIP2の最初の2つのエントリであり、他の誤ったエントリはCUSIP2リストの対応するエントリです。

または、同じ行にあります。したがって、最初の方程式は2行目にあり、リストの最初の項は2行目にあります。

さて、フォーミュラソルバーで掘り下げると、非常にきれいにINDEX(CUSIP2,0)で終了します。その後、間違った単語をスローします。エラーがキャッチしない場合は、間違った単語を投稿します。

私はこのエラーを追跡しようとしていますが、なぜExcelがこれを行っているのか推測できません。助けてください。google-fuが失敗しました(これを検索するための適切な用語さえ知っていた場合)


動作するサンプルデータと、このエラーをスローするサンプルデータを投稿できますか?(データが機密である場合は、機密
情報を漏らさ

回答:


0

Excel INDEXは、インデックス番号として0を好みません。説明と一致する例を次に示します。

Name 'Cups2'    INDEX(cups2,0)  INDEX(cups2,1)
hi              hi              hi
go              go              hi
now             now             hi
three           three           hi
five            five            hi
gal             gal             hi

CUSPID2範囲の最初のエントリが「」になるようにデータを編集できますか?次に、インデックスが0のときに最初のエントリを返すように数式を変更できます。

=INDEX(CUSIP2,MAX(1,SUMPRODUCT(ISNUMBER(SEARCH(CUSIP2,O2))*ROW($2:$5158))))

私はそれが好きです!これに1つの変更を加えて、インデックスに長い文字列を追加します(これは勝利でした。ここでメモします。大成功です)。ありがとうございました!
セルキー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.