13. november 2013 - 21:52Der er
12 kommentarer og 1 løsning
Makro der skifter til cellen til højre.
Hej. Jeg har uden held søgt efter en makro eller andet der kan hjælpe mig med min udfordring.
Jeg bruger en scanner til stregkoder. Scanner aktiverer automatisk "Enter" efter hvert scan. Jeg skal undgå en løsning hvor selve tastaturet skal bruges når jeg er i gang da det ikke vil lette arbejdet.
Behovet er at jeg, når jeg er i en celle i kolonne C5-C25, og taster "Enter" (altså scanner min stregkode), skal bringes til en celle i den samme række i kolonne D. Når jeg er i kolonne D skal jeg bare flytte en celle ned for hvert scan, men det gør den jo allerede som standard så det er ikke et problem.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 3 Then Target.Offset(0, 1).Select 'If Target.Column = 4 Then Target.Offset(1, -1).Select' tilbage til c End Sub
nb. skal du ikke tilbage til C kolonnen efter D, så fjern' foran linjen
Tak for svarene, men jeg kan desværre ikke få det til at virke... Jeg må hellere tilføje at det er i Excel 2003 det skal bruge, jeg ved ikke om det gør en forskel.
kabbak; Din makro kan jeg simpelthen ikke få til at virke hos mig... Jeg er grøn i det her, og laver måske en fejl jeg ikke ved af.
lokesa; Jeg kan få det til at virke hvis jeg går ind og afspiller makroen direkte. Jeg tror ikke jeg forstår hvad du mener med at sætte linjen ind efter mit "Enter/Scan" Tanken er at makroen kun skal gøre det ønskede når jeg befinder mig i en af cellerne fra C5 til C25. Hvordan fortæller jeg den det samtidig?
I må meget undskylde hvis jeg er for blank, men jeg håber det er meningen med denne side ;) Jeg er meget taknemlig for jeres hjælp.
Kabbak. Det ser faktisk ud til at jeg får det til at virke nu ;) Jeg vil gerne give dig point, men tillader mig lige et tillægs-spørgsmål...
Jeg har nu lavet en sregkode med ordet NY.
Kan jeg tilføje i din kode at når ordet NY scannes i kolonne D, så flyttes den aktive celle en plads til venstre, altså til kolonne C, samtidig slettes ordet NY så det ikke kan ses.
Jeg kan evt oprette dette spørgsmål i en ny tråd hvis det er bedre?
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 3 Then Target.Offset(0, 1).Select If Target.Column = 4 Then if target ="NY" then Target = "" Target.Offset(0, -1).Select' tilbage til c else Target.Offset(1, -1).Select' tilbage til c End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 3 Then Target.Offset(0, 1).Select If Target.Column = 4 Then if target ="NY" then Target = "" Target.Offset(0, -1).Select' tilbage til c else Target.Offset(1, -1).Select' tilbage til c end if End Sub
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 3 Then Target.Offset(0, 1).Select If Target.Column = 4 Then If Target = "NY" Then Target = "" Target.Offset(0, -1).Select ' tilbage til c Else Target.Offset(1, -1).Select ' tilbage til c End If End If End Sub
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.