つらつら Excel VBA

私の備忘録です。

時間はhh:mm:ssの形で入力する

mm:ssのつもりでExcelシートに入力してもhh:mmになる。見た目に騙されない。Excelが認識するように入力するのだ。
時間と思われるデータの頭に「00:」を追加してhh:mm:ssの形にした。

Sub 分秒を時分秒にする案()
    
    'Excelシートに書き込む前のデータを想定。
    
    Dim s As String
    s = "04:19" 'テスト用データ
    
    Dim rtn As String, temp As String
    
    If IsDate(s) Then
        temp = "00:" & s
        If IsDate(temp) Then
            rtn = temp
        Else
            rtn = s
        End If
    Else
        rtn = s
    End If
    
    With Selection
        '.NumberFormatLocal = "h:mm:ss"
        .Value = rtn
    End With
    
End Sub

以上。