Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Excel 2007 > 2019, nefunkční část VBA kódu

Narazil jsem na problém. V jedné tabulce Excelu 2007 jsem měl (VBA) kód listu, který po otevření v Excelu 2019 nefunguje. Mám dvě podobné tabulky/aplikace, v jedné to jde, v druhé ne. Principiálně se mi to zdá skoro stejné, zkoušel jsem kód zkopírovat (a upravit podle místních podmínek), ale nechytl jsem se.

Řešil jsem úlohu, aby v buňce napsaný text "051119" byl chápán jako text "05.11.2019", s čímž pak dokážu později pracovat jako s datumem. Mám na to kód listu. Excelu 2007 mi to funguje v obou aplikacích, v Excelu 2019 jen v jedné.

Došlo ve VBA 2019 oproti 2007 k nějakým zásadním změnám?

Kód:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Chyba
Application.EnableEvents = False
    If (Target.Column <> 4) Or Target.Row < 8 Or Target > 311299 Or Target < 10100 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)
 
    Application.EnableEvents = True
    Exit Sub

Chyba:
    Application.EnableEvents = True
    Exit Sub
End Sub

Chci, aby tahle změna, ta akceptace změny textu na datum, platila pouze ve 4. sloupci a od 8. řádku. Formát tohoto 4. sloupce je text.

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny