• ベストアンサー

Excelの関数で、範囲内で条件と一致したセルの位置を取得するには

Excelの関数で、範囲内で条件と一致したセルの位置を取得するには どうすればよろしいでしょうか? (例)  5行×5列にA~Yまでの25文字がランダムで配置されている場合、  「K」と「R」の位置(相対位置等)を取得したい。  ※範囲内に配置されている値は重複しません。 実際は20行程度×20列程度の範囲です。 ほとほと困り果てています。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

行位置 =IF(COUNTIF(A1:T20,"K")=1,SUMPRODUCT((A1:T20="K")*ROW(A1:T20)),"NA") 列位置 =IF(COUNTIF(A1:T20,"K")=1,SUMPRODUCT((A1:T20="K")*COLUMN(A1:T20)),"NA") 列名 =IF(COUNTIF(A1:T20,"K")=1,SUBSTITUTE(ADDRESS(1,SUMPRODUCT((A1:T20="K")*COLUMN(A1:T20)),4),1,""),"NA")

ninini0722
質問者

お礼

ご回答ありがとうございます。 どれも希望する結果が得られました。 大変助かりました。ありがとうございます!

その他の回答 (1)

noname#204879
noname#204879
回答No.2

セル C8 に次の[条件付き書式]を設定    数式が   =ISERROR(C8)    フォント色 白 セル C8 に次の配列数式を入力して、此れを下方にズズーッとドラッグ&ペースト    {=ADDRESS(SUM(($A$1:$E$5=B8)*(ROW($A$1:$E$5))),SUM(($A$1:$E$5=B8)*(COLUMN($A$1:$E$5))),4)}

ninini0722
質問者

お礼

ありがとうございます。 こちらでも希望する値が取得できました。 助かりました。

関連するQ&A

  • 同じ値が入力されているセルの相対位置を取得したい

    エクセル初心者です。 同列内で、自セルと同じ値が入力されているセルの相対位置を取得したいので、 関数を教えて頂けないでしょうか。 たとえば、検索範囲が A1:A25 で、各セルの値はランダムに並んでいて、 A3と同じ値がA8とA17にも入力されている場合に、「8」、「17」を得たいのですが、 A1からA25のすべてに対して同条件を満たすような配列式を教えて頂けたらとても有難いです。 宜しくお願いします。

  • ExcelのVlookup関数で一致した文字のセルの番地を取得する方法

    ExcelのVlookup関数で一致した文字のセルの番地を取得する方法 プログラム(VBA)で、検索で使用する関数でVlookup関数というのがあるというのが最近知ったのですが、Vlookup関数は、検索するセルの範囲を指定して、検索対象の文字列が一致した場合、そのセルの内容(値)を返すという風に書いてあったのですが、値ではなく、そのセルの番地を取得する方法はあるのでしょうか? ありましたら、その方法を詳しく教えてください。Vlookup関数以外でも検索するコードがあるようですが、Vlookup関数に限った場合でよろしくお願いします。 回答よろしくお願いします。

  • エクセルで、セルの位置を取得したい

    エクセルで、x,yデータがあり、 たとえば、xの最大値をmax関数 でもとめたとき、その時のyデータの値を 取得したい。 そのためには最大値のセルの位置を取得 する必要があるとおもうのですが、 わかる方よろしくお願いします。

  • 二つの条件に合った行のセルの値を取得する関数は

    H2に圃場番号を入力して、その値と一致する圃場番号をB列から取得します。 I2に農薬NOを入力して、その値と一致する農薬NOをD列の農薬NOから取得します。 両方の条件が合致した行の値をF列(散布量)の値をから参照して、散布量の値をJ2に取得し、二つの条件に合致しない場合、空欄にしたいです。 尚、B列の圃場番号は重複する番号が登録されている場合もあり、D列の農薬NOも重複する農薬NOが登録されている場合まあります。 しかし同じ圃場が同じ農薬を2度散布することはありません。例えばB列に圃場番号5が3回出てきますが、該当する行のD列の農薬NOは10,15,12と、それぞれ別になっています。 圃場番号5で農薬NOの10が登録された場合、この組み合わせが重複する行は絶対にないとします。 関数だけでこの操作を実現したいのですが、よろしくお願いします。

  • 関数内のセルの範囲を他のセルから取得する方法

    教えてください。 関数内のセル名を他のセルから取得することはできるのでしょうか? 例えば、B列の合計を求めるSUM関数であれば A1セルに関数を記述 =SUM($B$x:$B$y) A2セルに範囲(上記式のx)を指定  1 A3セルに範囲(上記式のy)を指定  10 これにより、B列のB1~B10の合計を求める。 といった感じです。 ※実際に使用したい関数は、SUMではありません。 よろしくお願いします。

  • vlookupの結果があるセルの書式を取得したい

    vlookupの結果があるセルの書式を取得したい =VLOOKUP(検索値,範囲,列番号,検索の型)で値を取ってくることは 出来ますが、その値の入っているセルの書式を取得したい。 Sheet1の セルA1に、検索したい値が入っていて、 セルB2にVLOOKUP関数が入り。 範囲はSheet2のA1:D1000となっていて、 列番号に4と入っていて10行目に 検索値と一致する値が入っていた場合に、D10の値は VLOOKUP関数で持ってこれますが、D10のセル書式を セルB2に反映させたいのですが、どのようにすれば良いでしょうか? VBAでプログラムしないとダメでしょうか?

  • エクセル関数内で位置としての行列値の扱い方がわからない

    例えば エクセルでA列とB列があり値が入力してあります。 A列の値が最初からだんだん増加し設定値以上になった、そのセルと同行でB列のセルの位置をだし、 B列セルの最初からそのセルまでを範囲で参照して その値群の最小値を求め、値を抜き出したいのです。 そこでA列にMATCH文を使用したらはじめのセルから何番目が設定値以上の値のセルかは出るのですが、その値をどのようにして関数で最初のセルの位置行列値に加えたらいいのかが分かりません。 VLOOKUP関数でもできそうなのですが出てきた値のその下のセルを参照したいのですが、やっぱりセルの位置行列値を下にずらす(例 B10→B11)方法が分かりません。 結局、たぶん関数内部で位置としての行列値の扱い方がわからないのが原因だと思います。 誰か教えていただけないでしょうか。

  • Excelの関数を教えてください。

    Excelの関数で例えば シートAのB行の中の値とシートBのセルA1の値、シートAのC行の中の値とシートBのセルB1の値が一致した行のF列の値を返す関数を考えているのですが、いろいろ試してもエラーになってしまいます。(B列とC列の一致する行は1つしかありません) これができないと家に帰れません;; どなたか、教えてください! よろしくお願いします。

  • エクセルで一致する値のタイトルを取得

    初歩的な質問ですみません。探しましたが見つかりませんでした。 B3の値を用いて 範囲D3:F6の値で比較。 一致する数値がある列の一番上の文字列を取得したいのですが この場合は,D3に値があるので,D2の「松」という値をどこか任意のセル(B2)に返します (実際はもっと大きなデータでB3に対応する値も複数,でもこれは一つ関数をつくってちょっといじればいいのかと思っています(^_^;) エクセル得意な方お願いします!

  • エクセルでのセル範囲取得

    セルの選択された範囲をVBAで取得する時、選択開始行は「ActiveCell.Row」で取得出来ますが、 選択終了行を取得するプロパティは無いのでしょうか? 「Selection.Cells.Count」を使用して、選択範囲の行数が返って来るのは分かっています。 問題なのはセルの選択順序です。 セルの範囲選択を上から下方向の場合は問題無いのですが、下から上に選択した場合、 選択開始行より下なのか、上なのかが判断出来ません。 そこで、選択範囲の行数ではなく、選択範囲終了の「行位置」が取得できる方法が無いかと色々調べてみましたが、見つけられませんでした。 どなたか御存知でしたら教えて下さい。

専門家に質問してみよう