« [Word2010] 脚注を挿入する/番号や書式を変更する | トップページ | [Windows7] エクスプローラ詳細設定表示の表示項目を固定したい »

[Excel] 一覧表から特定の言葉を含む行を検索して、その前後数行を抽出する

目的(例):膨大な時系列データがあり、ある現象が発生した前後のデータのみ抽出したい

手段:マクロを使用しない方法

基本的考え方:
1)作業列を設け、条件に一致した行に1,2,3と番号を付ける(IF、COUNTIF関数)
2)番号順に必要なデータを取り出す(INDEX、MATCH関数)

手順:
1)作業列を設ける

2)検索値セルを設け、検索値(数値や言葉)を入れる

3)各セルに次の内容を入れる
  =IF(セル番地=$検索値セル番地,COUNTIF($作業セル先頭-1:作業セル-1,"<999999")+1,"")
  注1:-1は、領域に自己セルを含めないため
  注2:+1は、1から番号付けのため
  注3:"<999999"は、数値セルのみカウントするため
  注4:一致しない場合は、空白。一致した場合は、連番
  注5:COUNTIF関数は、範囲内の個数を返す

4)抽出データ格納領域の左端列に、連番(1,2,3)を入れる

5)その右列セルに次の内容を入れる
  =INDEX(抽出列$先頭行:抽出列$最終行,MATCH(連番セル,$作業セル先頭:$作業セル最終,0))

  注1:MATCH関数:MATCH(検査値,検査範囲,照合の型)
     照合の型0を指定すると、範囲内の一致したセルの配列内での相対的な位置を返す
  注2:INDEX関数:INDEX(範囲,行番号)
     範囲内にある指定した行のデータが返される
     前後の行は、行番号±整数 で取り出せる

| |

« [Word2010] 脚注を挿入する/番号や書式を変更する | トップページ | [Windows7] エクスプローラ詳細設定表示の表示項目を固定したい »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: [Excel] 一覧表から特定の言葉を含む行を検索して、その前後数行を抽出する:

« [Word2010] 脚注を挿入する/番号や書式を変更する | トップページ | [Windows7] エクスプローラ詳細設定表示の表示項目を固定したい »