• ベストアンサー

エクセルデータ抽出について

月ごと実績データから指定月のみデータを抽出する方法を教えてください。 サンプルを添付しますのでよろしくお願いします。

noname#248032
noname#248032

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 まず、B10セルに次の様な関数を入力して下さい。 =IF(B$9="","",IF(ISERROR(1/(HLOOKUP(B$9,$3:4,ROWS($9:10),FALSE)<>"")),"",HLOOKUP(B$9,$3:4,ROWS($9:10),FALSE))) そしてB10セルをコピーして、B11~B13のセル範囲に貼り付けて下さい。  以上です。

noname#248032
質問者

お礼

ありがとうございました。 いろんな表で試してみたいと思います。

その他の回答 (3)

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.4

此方は如何でしょうか? セルB10に書き込み、 縦横にフィルしてください =IFERROR(offset($A$3,match(true(),index($A10=$A$ 4:$A$7,,),0),match(true(),index(B$9=$b$3:$e$3,,),0 ),1,1),"") データの扱い量が違うので index文よりoffset文の方が 僅かに早い かも,知れません 今回は エクセル2007以降を 対象に書きました お使いのものが 2003以前の ものだった場合 其の旨 お知らせ頂ける と、助かります 解説 & 豆知識 エクセルでは実はfail<TRUE なのです また、 定数配列内の文字列データの場合 演算を重ねていく内 同じか否かの評価に 文字列の先頭しか 評価対象にしない そんな ものがあります 配列数式の文字列演算結果を あてにし比較すると 危険ですね 加えて match文では降順または昇順 此に並んでいる必要がある の、ですが 同時に 検索がヒットした時点で 検索を終了する と、いう仕様も あります 通常 trueとfailが混在している ブール値の羅列は 降順から昇順、昇順から降順、 こう切り替わる場所か混在し 同時に trueで始まる場合とfailで始まる場合が ある訳ですが 一度trueが見つかれば その後にfailがあっても trueを見つけた時点で 検索が終了するため 検索時に 昇順から降順へ 切り替わる場所にまで 差し掛からず 昇順と降順の混在に エクセルは気づきません なので 一見ダメそうな此の式が 正しく動作する と、言う訳です 但し match文、small文、large文、MAX文、MIN文、 等は、 配列数式演算結果を 取り扱いデータ対象として 扱えません ので、 擬似的でも定数配列に 置き換える必要が 出てきます 其の任を果たしているのが index文です 不必要に見えて 外してしまうと動かなくなる 何故? と、 なりがち なのですが こういう働きが ある訳です

noname#248032
質問者

お礼

ありがとうございました。 いろいろ試してみたいと思います。

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

基本的にはVLOOKUP関数で抽出します。 目的の列(月)を変数化すればB7の値を変更するとデータ列が追従できるようにMATCH関数で列番号を指定します。 B8=IFERROR(VLOOKUP(A8,$A$1:$E$5,MATCH(B$7,A$1:E$1),FALSE),"") IFERROR関数はExcel 2007以降から組み込まれていますので、Excel 2003以前のときはエラー時の処理に別の関数で対応する必要があります。 B8をB11までコピーした結果が貼付画像です。

noname#248032
質問者

お礼

ありがとうございました。 助かりました。

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.2

B10: =INDEX(B$4:E$7,MATCH(A10,A$4:A$7,0),MATCH(B$9,B$3:E$3,0))

noname#248032
質問者

お礼

ありがとうございました。 助かりました。

関連するQ&A

  • エクセルを用いてデータを抽出したい

    エクセルについて教えて下さい。 資料を添付したのですが、1年分のデータを用い、1日の特定の期間の中で、最高と最低の数値を出したいと考えています。 特定の期間というのは、(1)9:00~11:00 (2)12:30~15:10の二つの期間です。 最終的には、下記のような表を作成したいと考えています。 日にち  9:00~11:00  12:30~15:10      最高    最低    最高    最低 1月2日  8950  8000  9000  7500 1月3日  9000  8500  9500  6500 1月4日  9500  7500  8000  6000   データは1年分あり、データが膨大にありすぎて、どのような形で行えば一番簡単にデータを抽出できるか悩んでいます。当方、c言語などの知識はないので、エクセルの関数を使ってデータを抽出したいのですが、なにか良い方法があればご教授ください。

  • エクセルのデータ抽出について

    エクセルのデータ抽出について教えてください。 シート名「支払実績」というシートから、シート名「参加状況」というシートへ 参加者ごとに1人当たりの負担額を「支払実績」から抽出したいのですが 上手くいきません。 どのような関数を使えば良いのでしょうかご教示をお願いいたします。

  • エクセルデータの抽出方法について

    A3:E3に横に仕入れ先、品名、数量、金額の項目がありランダムに15行データが入っています。 この表をG3:J17に仕入れ先AをM3:Q17に仕入れ先Bをという順番で仕入れ先毎にデータを抽出する方法を教えてください。 サンプル表を添付します。

  • グループ毎のデータを抽出する方法について

    A4からD23にグループ毎にデータがあります。 当データのグループ名を指定するとF4からI16までにデータを抽出する方法を教えて下さい。 ファィルを添付ます。 よろしくお願いします。

  • エクセル2013 データ・抽出について

    Windows 7 Office 2013 Excel を使用しています。 データシートより必要項目を抽出する方法ですが、フィルターオプションの設定で、指定した範囲(O)、リスト範囲(L)、検索条件範囲(C)、抽出範囲(T)等を設定し、目的のデータを抽出してますが、検索条件を変更した場合、最初からこれらの設定をし直さなければ出来ない事に成ります。 そこで、検索条件項目のみ変更する事で連続して抽出する事が出来ないのでしょうか?  そのやり方が解りません、ご存じの方教えて下さい。 又、上記以外の方法で抽出する事が出来れば、それについても教えて下さい。 目的は、マンションの部屋番号毎に記載した情報を、指定書式に記載し個別に通知する為、 作成する事を目的としています。

  • エクセルでデータの抽出方法

    Windows7、エクセル2010を使用しています。 エクセルで、指定したセルのデータを抽出する方法についての質問です。 エクセルに60000行×1列のデータがあるとして、 その中から99行目、199行目、299行目、・・・59999行目のデータを抽出しなければなりません。 手作業でコピーするのは時間的に非現実的なので、なにか抽出する方法はないでしょうか? 100行単位で列を変えれば、99行目のみをコピーし、行と列を置き換えればいいと思うのですが、そんなことは可能なのでしょうか? そのほか、何か方法があれば教えてください。

  • エクセルで特定データの抽出をしたい

    元データと抽出データはそれぞれ書式が違い、処理するPCも違います。元データをメールなどに添付し開き、抽出データへコピペすると、抽出データ表で必要なものだけ反映される方法を教えていただけませんか?元データ表は処理の都合上、毎回順不同。抽出データ表は、常に順序固定。また、抽出データ表のB列「勤務」が「退職」の場合、抽出データ表では事前に削除しています。元データにあって、抽出データにない項目(勤務、年齢、開始時間)は不必要。あくまで、抽出データがほしいだけ。条件としては、元データと抽出データの「名前」を参照し、抽出データそれぞれの項目にデータを表示。どちらのデータも、表の増減あり。ありあまりのもデータが膨大な為、抽出データ、元データともに、書式(表組)の変更はできません。何卒、ご伝授願います。追伸:元データの「%」は関数にて計算。

  • Excelで複数条件を満たすデータを抽出

    以下のような場合の、データ抽出方法を教えてください。 Sheet1 "計画”, Sheet2 "実績”があります。 それぞれのSheetの A~Dには、共通列項目である ”都道府県””都道府県コード””品目””品番” が設定されています。 このふたつのSheetをまとめて、項目順に”計画”データの下に”実績”データがくるようなSheetを作りたいのですが、上記4つの条件が全て共通なデータを、関数等と使って抜出すことはできるのでしょうか? If、VLOOKUP、And、”名前をつける”などを組み合わせて、いろいろ考えてみたのですが、複数条件を満たす結果の抽出ができませんでした。 宜しくお願いします。

  • エクセルでのデータ抽出

    エクセルでの複数シートからのデータ抽出方法を教えていただけないでしょうか。 1日から31日まで日にちごと作ったシートの中に”お客さん”と”担当者”と”料金”の3項目があるとします。その1日から31日までの全てのデータの中の”担当者”ごとに別のシートへデータの抽出を行いたいのですが。 複数のシートからのデータ抽出になります。 簡単な方法があったら教えていただけないでしょうか。

  • エクセルデータ抽出(日付)

    はじめまして、エクセルの関数とか殆ど分かりません。 そこで、以下内容の事をしたいのですが、どうすれば良いでしょうか? 前提 日付を入力した「元データ」があります。下記(1)~(3)を対応して「抽出データ」を作成したいです。 元データ 抽出データ 番号 日付 金額 番号 日付 金額 1 平成23年9月18日 \60,000 1 平成23年9月18日 \60,000 2 平成23年11月2日 \70,000 3 平成23年10月15日 \90,000 3 平成23年10月15日 \90,000 4 平成23年10月13日 \150,000 4 平成23年10月13日 \150,000 ⇒ 5 平成23年11月29日 \200,000 6 平成23年11月1日 \80,000              合計 \300,000   (1)今日より3ヶ月以内(月末〆)のデータのみ抽出する。 (2)抽出データの金額を計算する。 (3)抽出データを別のシートに作成する。 (1)~(3)を実行する方法を教えて下さい。

専門家に質問してみよう