vlož do modulu hárka nasledujúci kód:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Or Mid(Target, 3, 1) = "." Then Exit Sub
Target = Left(Target, 2) & "." & Mid(Target, 3, 2) & ".20" & Right(Target, 2)
End Sub
Aby sa kód neuplatňoval u iných stĺpcov, je potrebné definovať stĺpec, do ktorého zapisuješ ten Tvoj "skrátený tvar dátumu".
V uvedenom príklade ide o stĺpec "A" : Target.Column <> 1
Teda, pokiaľ sa nedeje zmena v stĺpci "A", ignoruj procedúru.
Podmienka: Stĺpec "A" musí mať nastavený formát buniek "text"!!!
Ovšem, nie je tu žiadne preverovanie, či nezadávaš blbosť, teda deň väčší ako 28, 29, 30, 31, mesiac väčší ako 12...
K dvojcifernému roku sa automaticky doplní predčíslie "20". Toto predčíslie nie je nutné dopĺňať, ale potom sa rok bude zobrazovať ako posledné dvojčíslie, ale napriek tomu s tým bude počítať ako s dátumom.
Ale teraz vidím, že Dwane Ti už navrhol iný dobrý a funkčný spôsob:
Vyplníš si stĺpec s Tvojim tvarom dátumu, nestaráš sa a na záver uplatníš na celý stĺpec nástroj "Text na stĺpce" pričom si zvolíš výsledok v tvare dátumu. Dokonca aj vzorce nad takto vzniknutými dátumami Ti budú fungovať a do očí Ti udrú chybné dátumy (správne dátumy sa zarovnajú dopravy, chybné doľava... Stĺpec ale musí byť tiež nastavený na formát textu, aby si mohol zadávať v Tvojom tvare ddmmrr