|
▼kaoru さん:
>▼ハチ さん:
>>丸めの基準を明確したほうが良いのでは?
>>9:10ならどっちですか?
>7:00以下なら7:00です
>7:00以上8:30以下なら8:30です
>8:30以上9:00以下なら9:00です
>9:00以上10:30以下なら10:30です。
>よろしくお願いいたします。
>関数で表現すると(:はエラーになりますが・・)
>=if(H14<7:00,7:00,if(and(H14<8:30,H14>7:00),8:30,(if(and(H14<9:00,H14>8:30),9:00,(if(and(H14<10:30,H14>9:00),10:30,h14))))
> です。
10:30以降は・・
なんでしょう?
Option Explicit
Sub Time_test()
'C列を作業列に使う。困る場合はOffsetの値を変更
With ActiveSheet
With .Range("B1", .Range("B65536").End(xlUp))
.Offset(, 1).Formula = "=Time_Round(B1)"
.Value = .Offset(, 1).Value
.Offset(, 1).Clear
End With
End With
End Sub
Function Time_Round(OrgT As Date) As Date
Select Case OrgT
Case Is <= CDate("7:00")
Time_Round = CDate("7:00")
Case Is <= CDate("8:30")
Time_Round = CDate("8:30")
Case Is <= CDate("9:00")
Time_Round = CDate("9:00")
Case Is <= CDate("10:30")
Time_Round = CDate("10:30")
Case Else
'それ以降は・・適当に12:00
Time_Round = CDate("12:00")
End Select
End Function
|
|