連続した時刻の入力には注意が必要です:Excel2010基本講座



更新 2021/07/01

時刻のオートフィル    topへ

フィル→連続データの作成を利用する

  1. B2セルにキーボードから 1:00 と入力します。
  2. B2セルを選択して、[ホーム]タブの[フィル]→[連続データの作成]を選択します。
  3. 連続データで範囲で「列」にチェックを入れます。
    種類は「加算」にチェックを入れます。
    増分値に 0:30 と入力します。
    停止値に 6:00 と入力します。
    [OK]ボタンをクリックします。
  4. 連続データが入力できました。
    手入力と比較しても同じとなり、誤差のない値を入力することができるのがわかります。

メモ帳を使って貼り付け直す方法

  1. Excelでオートフィルを使って値を入力します。(上記で説明したようにこの時点では小数誤差を含んでいます。)
    A列がオートフィルで入力しています。ここでは30分毎の例で示します。
  2. A列の値をコピーしてメモ帳へ貼り付けます。
  3. メモ帳に貼り付けた時刻をコピーして、Excelへ貼り付けます。
    メモ帳経由で貼り付けることで手入力と同じになったようです。(Falseの箇所がTrueとなりました)

数式を使って時刻の連続値を作成する

  1. A3セル以降には1分刻みの時刻が入力されています。
    B3セルに =TEXT((ROW(A1)-1)/(24*60),"h:m:s")*1 、C3セルに =TIME(0,(ROW(A1)-1),0) と入力して、数式を下方向へオートフィルでコピーします。
    D3セルには =A3=B3 、E3セルには =A3=C3 、F3セルには =A3-B3=0 、G3セルには =A3-C3=0 と入力しています。
    D1:G1セルには =COUNTIF(D3:D1443,FALSE) と入力してあり、Falseの数をカウントしています。
  2. 結果としては、TEXT関数を使って文字列で時刻を作成後に演算でシリアル値に直すのがよさそうです。
    なお、TIME関数を使ったケースでは30分毎の場合はTRUEとなりました。
    手入力の代わりに VBAで入力する例も追記しておきます。
    Sub test()
     Dim i As Long

     For i = 1 To 1440
       Cells(i + 2, 1).Value = DateAdd("n", i - 1, "0:0:0")
     Next i

    End Sub

よねさんのExcelとWordの使い方エクセル2010基本講座:目次データ/数式/関数の入力|連続した時刻の入力には注意が必要です