Hej Forum.
Jeg har tænkt en del over det
Når der er tastet 4 cifre, hopper den automatisk til næste TextBox.
Det samme sker, når man bruger Tab- eller Enter Tasten, før de 4 cifre er tastet.
- Det skal den gøre.
Hvis koden Sub TextBox2_Enter() nedenunder bruges, slettes klokkeslættet i næste TextBox, når der hoppes til den eller musen sættes i den.
Det er ikke formålstjenligt at slette et allerede indtastet og muligvis korrekt klokkeslæt, hvis klokkeslættet i foregående TextBox bare skal rettes.
Private Sub TextBox2_Enter() Me.TextBox2 = "" End Sub |
Det der laver fejlen er Function Korriger_Format(), der udfylder klokkeslættet med alle 4 cifre + kolon.
Hvis klokkeslættet rettes i første textBox, vil Function Korriger_Format() opfatte kolon som en del af de 4 cifre og herefter sætte et ekstra kolon.
Herefter hopper den til næste TextBox, der slettes af Sub TextBox2_Enter() koden.
F.eks 18:00
- Hvis 0 slettes vil klokkeslættet se sådan ud = 18:0
- Function Korriger_Format() opfatte kolon som en del af de 4 cifre.
- Herefter hopper den og sætter et ekstra kolon = 18::0
- Og klokkeslætsformatet med 2 kolon laver BUG'en.
Spørgsmål Kan der laves en Sub TextBox2_Enter, der laver en replace af "kolon" til "ingenting" hvis der allerede står noget i TextBoxen ?
På den måde vil der kun stå 4 cifre i TextBoxen og jeg formoder ikke den så hopper til næste TextBox, når et eller flere cifre slettes.
Jeg har prøvet en masse forskelligt fundet på nettet, men kan ikke sammensætte koden.
Private Sub TextBox2_Enter() If Me.TextBox2 = "" Then Exit Sub
kode her REPLACE ":", "", End Sub |
Jeg tager imod alle forslag med kyshånd
Testark kan downloades i første indlæg.
På forhånd tak
Ib