• ベストアンサー

この関数文の意味を教えてください。

31歳の男です。 下記の関数文の意味(訳)が分かりません。 教えて頂けないでしょうか? =INDEX(sheet2!F:F,MIN(INDEX(SUBSTITUTE((sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,sheet2!F1:F100)),0,10^5)*ROW(sheet2!F1:F100),))) 宜しくお願いします。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

>SUBSTITUTE((sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,sheet2!F1:F100)),0,10^5) ◆SUBSTITUTE(・・・・・・・・・,0,10^5) はmaronが使う式なのでmaronの回答かも知れません ◆この式の意味は 1)(Sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,Sheet2!F1:F100)) ★「Sheet2のA1:A100のうちで、E9と同じ」でかつ「Sheet2のF1:F100のうちで、E10の文字(または数字)が含まれている」 2)SUBSTITUTE((Sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,Sheet2!F1:F100)),0,10^5) ★式を入力しているセルを指定して、(Sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,Sheet2!F1:F100)) の部分を指定して、「F9」を押してください ★{0;0;0;0;0;0;1;0;1;1;0;0;0;0;0;・・・・・} のように1)の条件に合致したものが、上から1で表示されています ★この「0」を、10^5 に置換する式です 3)*ROW(Sheet2!F1:F100) ★それに、ROW(Sheet2!F1:F100) すなわち行番号を掛けると {100000;200000;300000;400000;500000;600000;7;800000;9;10;1100000;・・・・・・} ★7、9,、10(この例では)行目がが条件に該当します 4)MIN関数で、これの一番小さい値(一番上の行番号)を抽出します 【SUBSTITUTE(・・・・・・・・・,0,10^5) をしないと一番小さな値は「0」になります】 5)INDEX(sheet2!F:F のうちから、4)で計算された行を表示します ◆具体例がないので、式単独の説明で分かりにくいかもしれませんがこんなことでしょうか

tatuya24_2006
質問者

補足

丁寧なご回答ありがとうございました。 が、初心者ゆえに私には難しいです。 (2)SUBSTITUTE関数がよく分かっておりません。   この関数はどういった場合に使用するのでしょうか?(どんな役割があるのでしょうか?) (3)ROW関数は普通は行番号をかえしますが、今回はどのような使い方 をしているのでしょうか? 要は、この行は「~関数で~をしている」といった簡単なことで 結構ですので、申し訳ありませんが教えてもらえないでしょうか?

その他の回答 (1)

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.2

>SUBSTITUTE関数がよく分かっておりません。 SUBSTITUTE(文字列,検索文字列,置換文字列[,置換対象]) ・文字列のうち検索文字列を置換文字列に置換する関数です ★ヘルプでご自身で確認されることをお勧めします >ROW関数は普通は行番号をかえしますが、今回はどのような使い方 をしているのでしょうか? ・ROW(A1) と入力して下にコピーしてください ・1,2,3・・と表示されるはずです。 ・ですから、ROW(Sheet2!F1:F100) は、1,2,3,4・・・・99,100 となります ★前回答の下の操作を是非行ってください ★式を入力しているセルを指定して、(Sheet2!A1:A100=E9)*ISNUMBER(FIND(E10,Sheet2!F1:F100)) の部分を指定して、「F9」を押してください ★範囲を広げて同じように確認してください、きっとその式の意味が理解できると思います >要は、この行は「~関数で~をしている」といった簡単なことで・・・ ★関数で「Sheet2のA1:A100のうちで、E9と同じ」でかつ「Sheet2のF1:F100のうちで、E10の文字(または数字)が含まれている」ものでSheet2のF1:F100 のうち一番上の行のデータを表示します

関連するQ&A