• ベストアンサー

日付の時刻の部分だけ取り出す

エクセルでの質問です。 あるリストがあります。 日付の列で、 1つのセルに、日付と、時刻が入っています。 2006/6/19 17:00 という感じです。 これの17:00以降のデータを取り出したいのですが、 オートフィルタではうまくいきませんでした。 何かいい方法はないでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.4

> 17:00以上としても、データが取り出せません。 取り出せるはずですが、、、 ・全部半角で入力してますか? ・取り出した時刻シリアル値の表示形式は「時刻-->h:mm」になっていますか? で、ふと思いましたが、日をまたぐことは無いのですか? 例えば 25時(深夜1時)退出とか。 これがある場合、シリアル値から日付を落とす方法では乱暴ですね。漏れが発生 します。 すみません、、これから出かけますので、今日はもう回答できません。 急ぎの場合、他の回答者様からアドバイスを受けて下さい。 中途半端ですみません。

prinmint
質問者

お礼

お忙しいところ、たびたびすみません。 教えていただいた通りにして、できました! ほんとにありがとうございます! これで抽出することができます。

その他の回答 (4)

  • hirumin
  • ベストアンサー率29% (705/2376)
回答No.5

No.1で回答したhiruminです。 17時以降であるなら、単に時間部分だけを抜き出すだけでもいいのですよね。 =VALUE(TEXT(A1,"h") こうした後、オートフィルタで17以上としてもダメでしょうか。

prinmint
質問者

お礼

たびたびありがとうございます。 関数で、時刻の部分を抜き出した後、 セルの書式設定が hもしくは、h:mmになっていなかった ので、うまく抽出できなかったみたいです。 書式設定をh:mmにして、うまくいきました。 ありがとうございました!!

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

こんにちは。KenKen_SP です。 2006/6/19 17:00 2006/6/20 14:20 2006/6/21 16:40 2006/6/22 20:15 こんな感じのデータが A 列に並んでいて、日付は無視して 17:00 以降のデータ を抽出ってことかな? 上記データなら、 2006/6/19 17:00 2006/6/22 20:15 こういう結果が得られれば良い? なら、作業列を B 列にでも挿入し、 =TIMEVALUE(TEXT(A1,"h:mm")) で時刻 のみのシリアル値を取り出せるから、表示形式を適当な時刻の h:mm に変更 します。 それから、作業列B列に対してオートフィルターを設定し、▼をクリック。 [オプション]を選んで、 17:00 以上 で抽出できます。 んーー、、残業代の計算ですか? もしそうなら質問には目的を書いた方が良いですよ。 その場合には、オートフィルターを使わなくても、SUMIF とか SUMPRODUCT 関数 で計算できそうな気もします。(未確認)

prinmint
質問者

お礼

回答ありがとうございます。 時刻の部分は、教えていただいた方法で 取り出せました! ただ、オートフィルタがうまくいかないのです。 17:00以上としても、データが取り出せません。 質問の目的が、説明不足ですみませんでした。。 目的は、ビルの入退室の管理で、 17:00以降に退室した人のデータを取り出すと いうものです。 だから、日付も時刻もバラバラなのです。 ただ、17:00以降のデータの表示だけでいいんです。 リストは、名前と、ビルの名前と退室の日付・時刻がの3列です。

noname#204879
noname#204879
回答No.2

》 1つのセルに、日付と、時刻が入っています。 》 2006/6/19 17:00 yyyy/m/d hh:mm という日付形式で入力されているのなら、次のオプションを設定することによって、「これの17:00以降のデータを取り出」せるはずですが…   2006/6/19 17:00  以上

prinmint
質問者

お礼

回答ありがとうございます。 フィルタオプションの設定ですよね? それが、日付もバラバラなので、 その方法だとうまくいかなかったのです。。 NO.1さんの方法で時刻は取り出すことができました。 説明不足ですみませんでした。

  • hirumin
  • ベストアンサー率29% (705/2376)
回答No.1

> 2006/6/19 17:00 これが「文字列」ではなく、「日付」として入力されているのであれば、セルの書式で「時刻」にするだけでいいと思います。 文字列として時刻を抜くなら =TEXT(A1,"h:mm") でもいけますね。

prinmint
質問者

お礼

回答ありがとうございます。 =TEXT(A1,"h:mm")で、 時刻の部分だけ取り出すことができました! でも、17:00以降のデータが取り出せません。 オートフィルタで17:00以上、としても、 1件しか抽出されず、しかも、8:50のデータなのです。。

関連するQ&A