22. marts 2005 - 21:19Der er
47 kommentarer og 1 løsning
Kun et tal i felt videre til næste felt?
Hej
Jeg har en række med 30 felter. Alle felter kolonne brede på 2 Nu vil jeg gerne have det sådan, at man har tastet f.eks. 1 i felt A2 så hopper den selv videre til A3 osv osv.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det var ikke på den måde jeg mente. Måske jeg forklare mig forkert. Det er ikke i alle felter der skal stå 1. Kun i dem som jeg vil skrive i. Men jeg vil gerne have den sådan, at når jeg har trykket på 1 (ikke noget med Enter) så går den videre til næste felt. Man kan måske sige at 1 også kommer til at virke som ENTER også.
Ok Men hvis du har en eller anden form for løsning, så bare kom den så må jeg se på det. Men kan du fortælle hvordan jeg kan gøre så der max kan stå et tal i i felt? Så man ikke lige er kommet til og trykke to gange på 1 så der står 11 i stedet for 1
man kan også bruge makro, der tjekker når du forlader cellen.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then a = Len(Target) If a > 1 Then Target = Left(Target, 1) End If End If End Sub
her er det kolonne a den virker i
hvis der er mere end et tegn, beholder den den første
det var sørme meget Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If = Len(Target) > 1 Then Target = Left(Target, 1) End If End If End Sub
Hold da det går stærkt nu. Jeg prøver lige den du skrev kabak Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Len(Target) > 1 Then Target = Left(Target, 1) End If End If End Sub
' test Makro ' Makro indspillet 22-03-2005 af Michal Juul Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Len(Target) > 1 Then Target = Left(Target, 1)
Det kommer an på, hvad makreon skal bruges til. Dene skal afvikles automatisk, når du foretager dig noget i arket. Derfor skal den ligge i arkets kodemodul. Prøv, som kabbak tidligere har skrevet af høæjreklikke på arkfangen. Vælg Vis programkode. Og kopier makroen til dette ark.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column >= 5 And Target.Column <= 36 Then If Len(Target) > 1 Then Target = Left(Target, 1) Range("E32:AI43").Select
End Sub
Kabbaks makro tester på A- kolonnen. Dine tal starter i e-kolonnen, som altså er kcolumn 5.
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("E32:AI43")) Is Nothing Then If Len(Target) > 1 Then Target = Left(Target, 1) End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("E32:AI43")) Is Nothing Then If Len(Target) > 1 Then Target = Left(Target, 1) End If End Sub
Så lidt. Der er flere imorgen ;-) skal vi starte med 100
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.