• ベストアンサー

HLOOKUP関数

HLOOKUP関数?だけでは無いことなのかも知れませんが、HLOOKUP関数にて処理したい物があるので今回はHLOOKUP関数というタイトルで質問しているのですが? HLOOKUP(検索条件,デ-タ-表の範囲,行目,検索方法)の所の検索条件の該当セルは、他の関数で求めた結果の数値では、HLOOKUP関数に使用することは出来ないのでしょうか? そういう事もありえるので、貼り付ける時に形式を選択し、値にて貼り付け同様作業しているのですが?上手くいきません。 例えば、ある関数にて求めた数値が12だったとすると、このセルでは出来ない、このセルをコピ-後値で貼り付けても不可! しかし、他のセルに12と直接手動にて入れたセルを利用すると上手くいきます? どの様な間違いがあるのでしょうか?それとも不可能な事なのでしょうか?(因みに検索条件の当該セルの左上に緑マ-ク付いています) どなたかアドバイスお願いいたします。

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

  • ベストアンサー
noname#79209
noname#79209
回答No.2

なんだか複雑にしすぎているような... 多分、セルを結合しているのに、 C8,E8,G8に指定した関数の内容が、それぞれC7,E7,G7となっているからです。 つまり結合した右側のセル番地は使えないからです。 またこんなにIFの入れ子にしないでも、B列からはじまっているなら、 =COLUMN()-1 で充分です。文字列にしたいなら、 =TEXT(COLUMN()-1,"#") としてください。

aladd
質問者

お礼

vizzarさん、再びアドバイス有り難うございます。 原因が、結合した右側のセル番地は使えないからです、という所から自分なりの解決策を見つける事が出来ました。 COLUMN()-1やTEXT(COLUMN()-1,"#") の関数は、今後もう少し勉強したいと思います。

その他の回答 (1)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

検索条件に関数が入力されているセルを参照しても、問題なく動作するはずですか、ほかに何か問題があるのではないでしょうか。 緑マ-クは何らかのエラーがあることを示しているのですが、ちゃんと数値が表示されていれば、HLOOKUP関数を使えると思います。 ちょっと気がつくのは、検索方法のTrue,Falseの違いか、データ範囲の並べ替えが適切でないとか位しか思い当たりません。もう少し詳しい状況がわからないとなんともいえない。

aladd
質問者

補足

 1  2  3  4  5  6   11  8 25 36 74 33 の様な表が有ったとします。 この表を、下記の様にします。  (1)     (2)     (3)     1  2   3  4   5  6   (一番上の123456を(1)(2)(3)を関数にてグル-プ分けしています。) =IF(B7=1,"1",IF(B7=2,"3",IF(B7=3,"5",IF(B7=4,"7",IF(B7=5,"9",IF(B7=6,"11",IF(B7=7,"13",IF(B7=8,"15")))))))) ・ここで言うB7は、(1)のセルです。 ・この関数にて(1)の1 (2)の3 (3)の3のセルには緑マ-クは、付いていません。 ・同様にして =IF(B7=1,"2",IF(B7=2,"4",IF(B7=3,"6",IF(B7=4,"8",IF(B7=5,"10",IF(B7=6,"12",IF(B7=7,"14",IF(B7=8,"16"))))))))の関数にて(1)の2、(2)の4、(3)の6を表示させています。 ・何故だか不明ですが、ここで表示した246のセルには緑マ-クが付いてしまいます。 ・(1)のセルは1と2に掛かっているので、セルの結合をしています。 更に  (1)     (2)     (3)     1  2   3  4   5  6   の123456 の下に、一番上に表示している表の 11  8 25 36 74 33 を表示したい為にHLOOKUP関数を利用したいです。 最初にも書いたのですが、  (1)     (2)     (3)     1  2   3  4   5  6  は、値にて貼り付けてみました。 123456全てに緑マ-ク表示あり。  (1)     (2)     (3)     1  2   3  4   5  6  =HLOOKUP(B16,C19:T20,2,FALSE)という関数を、1の下に入れましたが、そのセルには、緑マ-ク付きで###と表示されてしまいます。 (1の下に、11と表示させたいので) 全く別のセルに手動で1と記入し、その下セルに =HLOOKUP(B16,C19:T20,2,FALSE)を入れると、ちゃんと11と表示されます。 この様な状況で、作業が止まってしまっています。

関連するQ&A

専門家に質問してみよう