2017-08-29 14 views
0

基本的には、行列内の特定のテキスト/数値を見つける方法を探していますが、セルの座標(行と列)を返すので、マトリックス内の指定されたセル間の「距離」を計算することができます。何か案は?私は研究してINDEX/MATCHの組み合わせについて発見しましたが、MATCHは1次元配列でのみ動作します。2次元の範囲(行列)のテキスト値を検索し、セルの参照を返します(行と列)

+0

マトリックスの各要素は一意であることが保証されていますか?マトリックスはどれくらいの大きさですか?テキストは数字のように見えますか? – pnuts

+2

はいくつかのサンプルデータのように聞こえ、期待される結果が役立つかもしれません –

答えて

0

解決策が見つかりました。但し、マトリックスには重複したエントリは含まれていません。 (さもなければ、これらの公式はうまくいかないでしょう)おそらく重複したエントリーを使って行うこともできますが、公式はもっと複雑になります。今のところ私は重複したエントリを仮定しません。それは言った、ここで私が見つけたものです:行番号を見つけるため

式:列番号を見つけるため

= SUMPRODUCT(MMULT(TRANSPOSE(ROW(<matrix>)),(<matrix>=<input value>)+0)) 

式:

= SUMPRODUCT(MMULT((<matrix>=<input value>)+0,TRANSPOSE(COLUMN(<matrix>)))) 

注:これらの両方のためにあなたがCtrlを押す必要がありますが+ Shift + Enter数式ボックスに数式を入力すると、それ以外の場合はエラーが発生します。

0

別の方法があります。 A2:E10にテーブルがあり、G2に関心のある値が含まれているとしましょう。関心の値が複数回発生した場合、その

I2, confirmed with CONTROL+SHIFT+ENTER 

=SMALL(IF(INDEX(A:E,H2,0)=G2,COLUMN(A2:E10)),1) 

注、行:ネイティブ列番号を戻すに

H2, confirmed with CONTROL+SHIFT+ENTER 

=SMALL(IF(A2:E10=G2,ROW(A2:E10)),1) 

ネイティブ行番号を返すように

最初の列番号(一番左上)が返されます。

関連する問題