- 締切済み
エクセル 特定のデータを抽出
A列のセルには日付と時間のデータ「12/05/23:43」と言うように時間ごとに1日分のデータ入力されています。 B列以降のセルには数値のデータが同じように1日分入力されています。 そのデータの中で7:00、8:00、9:00・・・と言うように複数の特定のデータのみを行単位で残し、その他は削除したいのですが、そのようなことは可能でしょうか?? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
関数式は条件該当行の抜き出しが不得意です。しかし技巧を凝らしてやれば出来なくもない。余分な列を1列使わねばなりませんが。 A列に日付・時刻のデータがはいっているとします。 (下記のB列のデータは初めはないものと見てください) A2からデータが入っているとします。(A1からでは都合が悪い。理由は略) (A列) (B列) 2003/12/1 2:33 2003/12/1 4:00 1 2003/12/2 4:01 2003/12/3 4:02 2003/12/4 4:03 2003/12/5 4:04 2003/12/6 4:05 2003/12/7 4:06 2003/12/8 4:07 2003/12/9 4:08 2003/12/10 4:09 2003/12/11 4:10 2003/12/12 5:00 2 2003/12/13 5:01 2003/12/14 6:00 3 B2セルに関数式 =IF(MINUTE(A2)=0,COUNT($B$1:B1)+1,"") を入れ、最下行(B16)まで複写します。(B1は空白であること。) すると上記のB列のような1,2,3・・の数が(多分飛び飛びに)条件該当行に出ます。 別シート(Sheet5)に移り、 A1セルに関数式 =OFFSET(Sheet4!$A$1,MATCH(ROW(),Sheet4!$B$1:$B$16,0)-1,0) といれ、Sheet4のB列の最終番号(上例では3)の行数まで 下方向に複写します。 式中の$B$16の部分はSheet4のB列データ最下行(より下)を指定します。 A列書式は、書式の日付の「1997/3/4 13:30」を選択しておくこと。 (結果)Sheet5のA1:A3に 2003/12/1 4:00 2003/12/12 5:00 2003/12/14 6:00
A列の時刻が正時のデータだけを抽出すると言う事でしょうか? 作業列(C列と仮定)を使用して、オートフィルタで抽出する方法です 1)C1セルに以下の数式を入力しC2以降必要範囲にコピー =IF(A1="","",IF(MINUTE(A1)<>,"削除","")) A列の時刻が正時で無い場合"削除"の文言をセット 2)C列を列選択後、メニューの[データ]・[フィルタ]でオートフィルタ]を指定し、フィルタを適用 3)C列名の▼をクリックして"削除"を選択 --->C列が"削除"の行だけが表示される 【注】1行目はC列の値に無関係に表示されるので注意 4)表示された行を行番号で範囲選択して、右クリックして『行の削除』を指定 5)再度メニューの[データ]・[フィルタ]で[オートフィルタ]を指定し、フィルタを解除 6)C列を削除