AKB48の推しメンをセンターにできちゃうかもしれない!? >>

エクセル関数で悩んでいます。データベースとして表を作りデータ自体は4行目から始まります。


A列 B列 C列 D列 E列 F列 G列 H列 I列 J列 K列
社員番号 氏名 生年月日 入社日 整理番号 報酬月額 備考 最新日付け 年令 年令判定

の順にデータが入力してあり約100名分あります。K列年令判定のうち、3に該当するすべての社員の、社員番号、氏名、報酬月額を別シートの表に順にデータを転記したいのですが、なかなかうまくいきません。G列年令判定の3は1、2、3、4と年令を分けたうちの3に該当する人の意味です。
どなたかわかる方、よろしくお願いいたします。

別シートはほかのデータの兼ね合いから、B列は13行目からの表に表示させたいです。

B列 C列 D列

社員番号 報酬月額 氏名
の順になっています。

A 回答 (5件)

こんばんは!



↓の画像のような配置になっているという前提です。
元データはSheet1にあり、Sheet2のA11セルに「年齢判定」の数値を入力すると14行目以降に表示されるようにしてみました。

画像ではSheet2にA14セルに
=IFERROR(INDEX(Sheet1!$A$3:$K$1000,SMALL(IF(Sheet1!$K$3:$K$1000=$A$11,ROW($A$3:$A$1000)-2),ROW(A1)),MATCH(A$13,Sheet1!$A$3:$K$3,0)),"")

配列数式なのでCtrl+Shift+Enterで確定!(←必須★)し
フィルハンドルで列・行方向にコピーすると
画像のような感じになります。

※ Sheet2の13行目項目名はSheet1と同じ項目名を入れておきます。m(_ _)m
「エクセルでデータベースの列の値を判定し、」の回答画像5
    • good
    • 0
この回答へのお礼

ありがとうございました。やってみたらできました。非常に助かります。

お礼日時:2018/05/13 14:23

要件がはっきりしませんがおそらくExcelで実現するにはVBAでのプログラミングが必要です。


プログラミングになじみが無い場合は外注してもよいでしょう。

もっといえばExcelは表計算ソフトでありデータベースとして使用するのに向いていません。
Microsoft Office製品群の中ではAccessを使えばテーブルやクエリが作れ、
比較的簡単に見たいデータだけを抽出できます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
VBAも考えましたが、全然スキルが追い付かないので断念しました。

お礼日時:2018/05/12 06:36

要件を確認させてください。



・元データ
シート1は、A列が社員番号、B列が氏名、G列が年令判定、報酬月額は何列ですか?

・抽出条件
シート1のG列の年令判定が「3」

・転記する内容
シート2の13行目から、B列に社員番号、C列に報酬月額、D列に氏名

これで良いですか?
    • good
    • 0
この回答へのお礼

回答、ありがとうございます。
失礼しました。抜けがありました。
整理番号と報酬月額の間に取得年月日があり、J列が年齢判定ではなくK列が年齢判定列に
なります。
mた、年令判定するK列には計算式が入って、年令を1~4に分けています。

お礼日時:2018/05/12 06:43

当該列の指定値行のみ抜き出す関数は無いです。


全て検査して、該当以外は0又は空白表示はできます。

一番簡単なのは、
元データーの判定行でフイルターして、
結果をコピーする方法でしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます。
質問の仕方がわるかったのですが、該当者全員を抜き出したいのです。

お礼日時:2018/05/11 17:12

フィルタで抽出すればいいのでは

    • good
    • 0
この回答へのお礼

ありがとうございます。
別シートで管理したいのと自動判定させたいので、フィルタだとちょとできないと思うので、質問いたしました。

お礼日時:2018/05/11 17:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q【エクセル】表から条件に合ったデータを別シートに順番に抽出したい

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
74 PC
75 ペン
76 モニタ



80 


【補足】
元の表(シート1)を編集することがあるので
自動的に反映されるよう、関数で作成できたらと思います。
シート2の構成上、抽出後のソートや、フィルタオプションは避けたいです。

わかりづらい文章で申し訳ございませんが
どなたかいいアドバイスがありましたら教えてください。
お礼は明日になってしまいますが、必ずご返答いたします。
よろしくお願いいたします。

 

エクセルの表である条件にあてはまる行を
別シートに順番に抽出されるような関数を教えてください。


シート1のB列にあるデータが"渋谷区"のとき
シート2のE74からE80くらいまでに
シート1のC列のデータを上から順に抽出されるようにしたいです。

【シート1】
A        B         C
1 東京都 渋谷区  PC
2東京都  港区  PC
3東京都 新宿区  マウス
4東京都 渋谷区  ペン
5東京都 渋谷区  モニタ



10

【シート2】

E
...続きを読む

Aベストアンサー

>E74に関数を入力し、その後関数をE80までドラッグすればよいのでしょうか?
いいえ。
1.
=INDEX(シート1!C1:C11,SMALL(IF(シート1!B1:B10="渋谷区",ROW(A1:A10),11),ROW(A1:A10)))&""
の数式を掲示板上でコピーします(シート名は合わせてください)
2. E74:E80セル範囲を選択します
3. 数式バーで[Ctrl]+[V]貼り付け
4. [Ctrl]+[Shift] +[Enter] でセルへの入力を確定させます

>その際、絶対参照や相対参照は必要でしょうか?
セルのコピーはしませんので不要です。
参考まで


人気Q&Aランキング