я знает =) На скорую руку Private Sub Worksheet_Change(ByVal Target As Range)    Dim vValDim StrVal As StringDim dDate As Date     If Target.Cells.Count > 1 Then Exit Sub     If Not Intersect(Target, Range("A2:A10")) Is Nothing Then         With Target             StrVal = Format(.Text, "000000")             If IsNumeric(StrVal) And Len(StrVal) = 6 Then                 Application.EnableEvents = False                 dDate = DateValue(Left(StrVal, 2) & "/" & Mid(StrVal, 3, 2) & "/" & Right(StrVal, 2))                 .NumberFormat = "dd/mm/yyyy"                 .Value = CDate(DateSerial(Year(dDate), Month(dDate), Day(dDate)))             End If         End With     End If     If Not Intersect(Target, Range("B2:B10")) Is Nothing Then         With Target             vVal = Format(.Value, "0000")             If IsNumeric(vVal) And Len(vVal) = 4 Then                 Application.EnableEvents = False                 .Value = Left(vVal, 2) & ":" & Right(vVal, 2)                 .NumberFormat = "[h]:mm"             End If         End With     End If     Application.EnableEvents = TrueEnd Sub