Odstranil jsem změnu barvy buňky
Odstranil jsem okno "Iná chyba"
Nechal jsem tam ty své podmínky, pokud bych do těch sloupečků potřeboval napsat i něco jiného než datum (vím, je to trochu prasárna…)
Nyní vyskočí upozorňovací okno pouze v případě nějakého "překlepu" v datumu, např. 30.02.2017
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Chyba
Application.EnableEvents = False
If (Target.Column <> 1 _
And Target.Column <> 2 _
And Target.Column <> 3 _
And Target.Column <> 4 _
And Target.Column <> 6) _
Or Target.Row < 5 Or Target > 311299 Or Target < 10100 Or Mid(Target, 6, 1) = "," Or Mid(Target, 7, 1) = "," Then
Application.EnableEvents = True
Exit Sub
End If
If Mid(Target, 5, 1) > 4 Then
Stoleti = 19
Else: Stoleti = 20
End If
Target = Left(Target, 2) & "." & Mid(Target, 3, 2) & "." & Stoleti & Right(Target, 2)
Range("E1:E2").NumberFormat = ";;;"
Range("E1") = Target
Range("E2").FormulaR1C1 = "=IF(ISERROR(DATEVALUE(R[-1]C)),""Chyba"","""")"
If Range("E2") = "Chyba" Then
Target.Select
MsgBox "Zadané datum neexistuje!", vbCritical, "Pozor"
End If
Application.EnableEvents = True
Exit Sub
Chyba:
Application.EnableEvents = True
Exit Sub
End Sub