• ベストアンサー

index・match・vlook関数を使う??

H1セルの社員名の「田中よしこ」さんが、H2セルの現レベル「技術A」だった時に、A1:E8にある表の○がついている個所の社内研修をうける必要があります。 H1セルとH2セル内には関数が入っており、社員名が変わると、現レベルも“技術A~D”の表示が出るようになっています。 H5:H8セル内に、該当する必要研修の一覧を出すには、どのようにしたらよいのでしょうか? INDEX関数やVLOOK関数、MATCH関数について、サイトで色々見てみましたが良く分かりません。 どなたか、どうぞよろしくお願い致します!!

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

回答No2です。 H5への入力の式は次の式で十分でしたね。 =IF(OR(COUNTIF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($10:$10,MATCH(H$2,$1:$1,0)),"○")=0,ROW(A1)>COUNTIF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($10:$10,MATCH(H$2,$1:$1,0)),"○")),"",INDEX($A$1:$A$10,SMALL(IF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($10:$10,MATCH(H$2,$1:$1,0))="○",ROW(A$1:A$10),""),ROW(A1))))

burakky
質問者

お礼

こんな関数、絶対に自分では思いつかないです。ありがとうございました!!できました!

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • CLOWN-6-
  • ベストアンサー率51% (17/33)
回答No.4

基本的にとあるデータをもとに特定のデータを一覧として出す事は難しいです。 この場合、マクロを使う必要が出てきてしまう場合もあります。 しかし今回の場合、技術Aの場合に呼び出す項目は決まっているようなので 「もし技術AならばH5のセルにサービスマナー(1)、H6のセルに実験(1)を記入する」と言った関数であれば可能です。 後は↑の関数に技術Aで無かった場合技術Bを場合、技術Cの場合とIF関数を入れ子していけば作成可能です。

burakky
質問者

お礼

ありがとうございました!

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

例えばH5セルには次の式を入力してから、式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押します。 =IF(OR(COUNTIF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($1000:$1000,MATCH(H$2,$1:$1,0)),"○")=0,ROW(A1)>COUNTIF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($1000:$1000,MATCH(H$2,$1:$1,0)),"○")),"",INDEX($A$1:$A$1000,SMALL(IF(INDEX($1:$1,MATCH(H$2,$1:$1,0)):INDEX($1000:$1000,MATCH(H$2,$1:$1,0))="○",ROW(A$1:A$1000),""),ROW(A1)))) 式の両側には{  }がついて配列数式となります。その式を下方にオートフィルドラッグします。

全文を見る
すると、全ての回答が全文表示されます。
noname#158634
noname#158634
回答No.1

惜しい。 VLOOKUPまでたどり着いたならそこからLOOKUP関数を見つけ出してほしかった。 INDEX・MATCH・VLOOKUPに思い当たっているということは、1行目の値がH2と一致する列を拾うまではできてますよね? LOOKUP関数なら、検索値より左の列にある値を拾えます。

burakky
質問者

お礼

ありがとうございました!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VLOOK関数で作った請求書で、¥が表示されない

    請求書の元になる一覧表では数字に¥や,がついています。 その金額をVLOOK関数で作った請求書に入れてると通貨表示のないただの数字になってしまいます。それで、請求書の金額のセルを金額表示(¥や,のある)にさせようと、「通貨」でいろいろ試しているのですが、全く変更できません。セル内は、例えばこんなふうになっています。 =VLOOKUP(I4,Sheet1!A2:BH799,37,FALSE)&"" VLOOK関数を入れないセルの数字は、金額表示にすぐできます。 どうしたらいいのでしょうか。宜しくお願い致します。

  • VLOOK関数で参照してきた数に、新たに計算関数を入力したいのですがど

    VLOOK関数で参照してきた数に、新たに計算関数を入力したいのですがどうすればいいですか? A1に太郎と入力した時に、C1に1と表示されるようにしました。その時空白だっだセルB1に数字を 入れた時、VLOOK関数で表示されているC1の数字1をB1にいれた数字かけるC1で表示させたいのですが、どうすればいいですか教えてください。

  • エクセルのVLOOK関数について

    VLOOK関数で、 B1に123456と入力した際、5桁目の5を抽出(MID)し、 A3~D3に次の結果が表示されるようにしたいです。 VLOOK、VALUE、IF、MID等が必要だとは思うのですが、組み立てがわかりません。 A B    C  D 1 123456 2 鳥  猫     犬    猿  3 51 52 53 54 4 ※B1に123446と入力した場合は以下です A B    C  D 1 123446 2 鳥  猫     犬    猿  3 41 42 43 44 4 ・データリスト    鳥  猫  犬   猿  1 11 12 13 14 2 21 22 23 24 3 31 33 33 34 4 41 42 43 44 5 51 52 53 54 6 61 62 63 64 よろしくお願いします<(_ _)>

  • vlook関数を使用しての文字列について

    東京都渋谷区神宮前1-2-3というデータをVLOOK関数を使用し  A1東京都 A2渋谷区 A3神宮前 A4.1-2-3 と出した際に A4のハイフンを含んだ番地がセル内では自動計算されてしまいます。 そのセルの書式を文字列にしていますと数式になってしまいますのでハイフンを のこした表示にする方法を教えて下さい。

  • INDEXとMATCH関数について。

    業務で使用しているファイルにINDEXとMATCHを組み合わせた関数を使っています。 =INDEX(Sheet4!E2:E999,MATCH(Sheet1!F17,Sheet4!A2:A999,0)+2,0) です。 教えて頂きたいことは、 ・上記の関数の説明(詳細)この関数はどういったしくみになっているのか。 ・セルが空白のときに#N/Aを表示させないこと。 ・完全一致型にしたいこと。 この3点を教えて頂けませんか?よろしくお願いします。

  • Excel INDEX関数の使い方

    添付図はA列B列にデータが入っており E1:E5のようなリスト(部署一覧)を用意しておき C列に部署名をとりだそうというものです C2に =INDEX(部署一覧,MATCH(1,FIND(部署一覧,B2),0)) という数式を入力してCtrl+Shift+Enterで配列数式にすれば部署名を取り出せるとありました 1.その通りにやってなるほど部署名はとりだせたのですが MATCH関数の引数に”1”とあるのがその意味が分かりません どなたか解説をお願いできないでしょうか 2.また部署名の前に別の文字列 例えば”関東支社”のような文字列がある場合 部署名だけを取り出すことはできないものでしょうか よろしくお願いします

  • VLOOKだったと思うのですが、忘れてしまいました!

    シート1に表があります。 この表は A列     B列 部署名    部署番号 (営業部)  (50) シート2の表には A列     B列    C列     D列 請求書#   日にち   部署番号   金額 となっています。 このシート2のE列に部署名を記入したいのですが、C列の部署番号から検索してやっていくと時間がかかってしかたありません。 前に関数を教えてもらったのですが、やり方を忘れてしまいました。多分VLOOKとか言っていたように思います。 こんな説明で分かりますでしょか? お分かりになる方教えて下さい!よろしくお願いします。

  • INDEX関数?それともMATCH関数?

    INDEX関数?それともMATCH関数? エクセル2000で下記の様な事をしたいのですが、どうしても分からず思い悩んでいます。 どなたか分かる方がいらしたら、教えてください。 【この表について】 ・予測A(行3)と予測B(行20)と予測(行30)は最初から入っている数値 ・結果A(行4)と結果B(行21)に左から1クール終わるごとに数値が入力される ・結果A(行4)と結果B(行21)に数値が入ると、実績(行31)が表示される ・(行38)と(行39)は予測Aに対する予測Bの割合 【やりたいこと】 <黄色のセル> (1)B31が表示されたらB38を表示 (2)B31~C31が表示されたらC38を表示 (3)B31~D31が表示されたらD38を表示 (4)B31~D31が全て空白ならばD38を表示 (FGHについても同様に表示させたい) →現在の数式は(1)~(3)についてはできるのですが、(4)の場合に#N/Aとなってしまいます。 <赤色セル> (1)B31が表示されたらB38を表示 (2)B31~C31が表示されたらC38を表示 (3)B31~D31が表示されたらD38を表示 (4)B31~D31とF31が表示されたらF39を表示 (5)B31~D31とG31が表示されたらG39を表示 (6)B31~D31とH31が表示されたらH39を表示 (7)B31~D31とF31~H31が全て空白ならばH39を表示 →これもINDEXやMATCHを使って色々考えてみたのですが、(7)の時が#N/Aとなってしまいます。 どうぞよろしくお願いします。

  • エクセル関数で困っています。VLOOK??・・

    恐れ入りますが、下記のような場合での関数は何を使えばよろしいでしょうか? シート1に A列     B列 郵便番号  地区分コード(17分類) 000-0001  1 000-0002  2 000-0003  3 という一覧表があります。 シート2には A列     B列 郵便番号  事業所の一覧(3000社) 000-0001  トウキョウショウジ 000-0003  カナガワショウシャ 000-0002  サイタマコウギョウ という具合です。 シート1の郵便番号とシート2の郵便番号が一致した場合に シート1のB列にある地区分類コードをシート2のC列に入れたいのです。 シートがわかれている必要はありません。 VlookUPらしいということまで分かりましたが、何度やってもN/Aが出てきます。 どなたかお教え下さいませ m(_ _)m

  • VLOOKアップ関数の結果の一つ下のセル表示

    他の方の質問をみましたが、いまいちわからないので御回答お願いします。 シート1:A列にに文字列(会社名)が入力してあります。 A列の文字列を参照し、シート2の結果を表示したいです。 シート2はA列にシート1と同じ文字列(会社名)、B列にはその会社に対する、1行目(預金種類) 2行目(口座番号)…となっています。 A列の会社名を参照し、預金種類はVLOOK関数でできましたが、その1行下にある口座番号はどのような関数を使用すれば表示できますか? 宜しくお願いします。