• ベストアンサー

Excel関数 履歴を記録する方法

A1セルにランダムで変化する数値があります。 この数値の履歴を時刻毎に残す方法があるでしょうか。 その時間帯の最後に表示された数値を記録するだけでかまいません。 現在時刻が6:50になったら6:40の欄に記録するということです。 必要な時刻はExcel内に持っています。 ランダム 現在時刻 1000   6:49 6:00 1200 6:10 1100 6:20 900 6:30 1000  6:40 6:50 7:00 以下深夜0時以降も続く

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

関数では無理なので、ちょっと要望とは違いますが、手抜きのマクロを作りました。 3行目から下に時刻とデータを転記します。 最新が上、下に行くほど古いデータです。 一発目は直ぐにデータを転記しますが、次からは分の下一桁が0になったタイミングでデータを転記します。 A1セルの値が無しになるまですっと動き続けますので、不要になったらExcelを終了してください。 Sub Sample()   If Range("A1") = "" Then Exit Sub   Rows(3).Insert Shift:=xlDown   Range("A3") = Now() - 10 / (24 * 60) '10分前の時刻表示   Range("B3") = Range("A1")      TargetTime = Format(Now() + 10 / (24 * 60), "hh:mm")   TargetTime = Left(TargetTime, 4) & "0" '次の起動時刻   Application.OnTime TimeValue(TargetTime), "Sample" End Sub

OTTO-TTO
質問者

お礼

ありがとうございました。 教わるというより作ってもらいましたが、無事完成しました。

その他の回答 (1)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

補足願います。 必ず10分周期ですか? 時刻をシートから取らなくても区切りのよい10分周期(00分、10分、20分、……)の時刻であれば良いですか?

OTTO-TTO
質問者

お礼

ありがとうございます。 マクロの使い方がわからないので、週明けに使い方を教わってきます。

OTTO-TTO
質問者

補足

ありがとうございます。 「10分周期で永遠に」という動作をするのでしょうか。 「A1に数値が発生した時から10分周期」 「数値が消えたら記録を止める」ということなら周期でもいいのですが、 そうでない場合は、シートから取得する時刻に合わせて記録動作をさせたいと思っています。 いずれにしても、セルの数値をコピー&ペーストする関数があるといいのですが、

関連するQ&A