/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Kan nogen hjælpe med en input komando?
Fra : Rex


Dato : 30-05-02 22:42

Jeg har købt en kortlæser, som skal bruges til at læse sygesikringskort ind
med, isteddet for at indtaste
dataene manuelt.

Når man kører kortet igennem skriver den følgende (skriver ligesom
tastaturet)

ÅEFTERNAVN&FORNAVN STEENWINKELSVEJ 26 ST TH
147post
*92081004cpr nr1007412014147061196

Eller:

ÅEFTERNAVN&FORNAVN HåNDELSVEJ 2 ST TH
101post
*92081004cpr nr1004634013101130598

(der hvor der står "cpr nr" står normalt de 10 cifre som et cpr nummer
består af
og post er lig med post nummert)


Jeg har lavet i programmet 4 text bokse henholdsvis: navn, adr, post & cpr

Hvordan får jeg visuel basic til at tage inputtet fra keyboardet og putte
den rigtige tekst i de rigtige felter???

Jeg håber virkelig der er et frisk person der kan knække dette.
Det er sikkert simpelt for den dygtige.. Så det viser jo lidt om mine
evner...

-Rex




 
 
Bjarke Walling Peter~ (31-05-2002)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 31-05-02 19:17

Rex skrev:
[snip]
> Hvordan får jeg visuel basic til at tage inputtet fra keyboardet og putte
> den rigtige tekst i de rigtige felter???

Det skulle ikke være så svært ... jeg skal bare lige høre om det er præcist
følgende den skriver:

Å<efternavn>&<fornavn><nogle mellemrummer - er det altid et fast
antal??><adresse><ENTER>
<tre-cifret tal><postnummeret><ENTER>
*<otte-cifret tal><cpr.nr><nogle tal>

Mvh. Bjarke

[snip]



Rex (02-06-2002)
Kommentar
Fra : Rex


Dato : 02-06-02 19:08

Helt præcist.:

Å<Efternavn>&<Fornavn>Nogle mellemrummer(resten af navnet, Ikke fast antal)
<Adresse(starter på fast plads)>nogle mellemrum(resten af adressen)
<7 cifret tal,Starter på fast plads(hvor de sidste 4 cifre er
postnummeret)><enter>
*<otte cifret tal><cpr nr.><nogle tal><Enter>

-Rex

"Bjarke Walling Petersen" <bwp@bwp.dk> skrev i en meddelelse
news:3cf936c1$0$9045$edfadb0f@dspool01.news.tele.dk...
> Rex skrev:
> [snip]
> > Hvordan får jeg visuel basic til at tage inputtet fra keyboardet og
putte
> > den rigtige tekst i de rigtige felter???
>
> Det skulle ikke være så svært ... jeg skal bare lige høre om det er
præcist
> følgende den skriver:
>
> Å<efternavn>&<fornavn><nogle mellemrummer - er det altid et fast
> antal??><adresse><ENTER>
> <tre-cifret tal><postnummeret><ENTER>
> *<otte-cifret tal><cpr.nr><nogle tal>
>
> Mvh. Bjarke
>
> [snip]
>
>



Bjarke Walling Peter~ (03-06-2002)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 03-06-02 12:54

Rex skrev:
> Helt præcist.:
>
> Å<Efternavn>&<Fornavn>Nogle mellemrummer(resten af navnet, Ikke fast antal)
> <Adresse(starter på fast plads)>nogle mellemrum(resten af adressen)
> <7 cifret tal,Starter på fast plads(hvor de sidste 4 cifre er
> postnummeret)><enter>
> *<otte cifret tal><cpr nr.><nogle tal><Enter>
>
> -Rex

Det svar jeg skrev i går kunne jeg ikke sende via TDC's newsservere - så
nu sender jeg det via newsgate.dk.

Okay ... her har du en kode, som virker hvis personen ikke har et
mellemnavn. Jeg er ikke helt sikker på hvor mellemnavnet skrives henne
nemlig. Den rutine jeg har lavet søger nemlig efter det første mellemrum
i første linie og siger at navnet er før dette ... hvis det er sådan at
mellemnavnet er efter et mellemrum efter fornavnet, så vil det jo ikke
virke. Jeg kan så i stedet lave det lidt om, hvis jeg kender den præcise
position adressen starter på - så behøver den ikke at søge efter det
første mellemrum. Grunden til den ikke søger efter sidste mellemrum i
første linie er at der jo med stor sandsynlighed er et mellemrum i
adressen.

Jeg har foresten lige gjort så den resetter txtData og sætter fokusen på
denne efter et input. Hvis man nu skal indlæse flere kort efter
hinanden, behøver man ikke selv at fjerne hvad der er skrevet i txtData
imellem hver indlæsning.
Forudsat du har fem tekstbokse: txtData (hvor indputtet bliver taster),
txtNavn, txtAdresse, txtPostNr, txtCprNr ... så indsæt følgende kode
event-rutine i din forms kode:

Private Sub txtData_Change()
Dim pos As Long
Dim txt As String
Dim lin As String
txt = txtData.Text
pos = InStr(txt, vbCrLf)
If pos <> 0 Then
lin = Left$(txt, pos - 1)
txt = Mid$(txt, pos + 2)
pos = InStr(lin, " ")
If pos > 2 And Left$(lin & " ", 1) = "Å" Then
txtAdresse.Text = Trim$(Mid$(lin, pos))
lin = Mid$(lin, 2, pos - 2)
pos = InStr(lin, "&")
If pos = 0 Then
txtNavn.Text = lin
Else
txtNavn.Text = Mid$(lin, pos + 1) & " " & Left$(lin, pos
- 1)
End If
End If
pos = InStr(txt, vbCrLf)
If pos <> 0 Then
lin = Left$(txt, pos - 1)
txt = Mid$(txt, pos + 2)
If Len(lin) = 7 Then
txtPostNr.Text = Mid$(lin, 4)
End If
pos = InStr(txt, vbCrLf)
If pos <> 0 Then
lin = Left$(txt, pos - 1)
If Len(lin) > 19 And Left$(lin & " ", 1) = "*" Then
txtCprNr.Text = Mid$(lin, 10, 6) & "-" & Mid$(lin,
16, 4)
End If
txtData.Text = ""
txtData.SetFocus
End If
End If
End If
End Sub

Hvis du har problemer, blot sig til.

Mvh. Bjarke


--
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG

Rex (07-06-2002)
Kommentar
Fra : Rex


Dato : 07-06-02 16:53

Jeg har lidt problemer med at få det til at virke...
Men MANGE tak for koden...

Jeg pusler lidt med det på søndag, hvis jeg ikke får det til at virke,
håber jeg det er i orden at jeg stiller dig et par spørgsmål..

-Rex

"Bjarke Walling Petersen" <bwp@bwp.dk> skrev i en meddelelse
news:3af806f3f788d64aee2073734f7f6926.42843@mygate.mailgate.org...
> Rex skrev:
> > Helt præcist.:
> >
> > Å<Efternavn>&<Fornavn>Nogle mellemrummer(resten af navnet, Ikke fast
antal)
> > <Adresse(starter på fast plads)>nogle mellemrum(resten af adressen)
> > <7 cifret tal,Starter på fast plads(hvor de sidste 4 cifre er
> > postnummeret)><enter>
> > *<otte cifret tal><cpr nr.><nogle tal><Enter>
> >
> > -Rex
>
> Det svar jeg skrev i går kunne jeg ikke sende via TDC's newsservere - så
> nu sender jeg det via newsgate.dk.
>
> Okay ... her har du en kode, som virker hvis personen ikke har et
> mellemnavn. Jeg er ikke helt sikker på hvor mellemnavnet skrives henne
> nemlig. Den rutine jeg har lavet søger nemlig efter det første mellemrum
> i første linie og siger at navnet er før dette ... hvis det er sådan at
> mellemnavnet er efter et mellemrum efter fornavnet, så vil det jo ikke
> virke. Jeg kan så i stedet lave det lidt om, hvis jeg kender den præcise
> position adressen starter på - så behøver den ikke at søge efter det
> første mellemrum. Grunden til den ikke søger efter sidste mellemrum i
> første linie er at der jo med stor sandsynlighed er et mellemrum i
> adressen.
>
> Jeg har foresten lige gjort så den resetter txtData og sætter fokusen på
> denne efter et input. Hvis man nu skal indlæse flere kort efter
> hinanden, behøver man ikke selv at fjerne hvad der er skrevet i txtData
> imellem hver indlæsning.
> Forudsat du har fem tekstbokse: txtData (hvor indputtet bliver taster),
> txtNavn, txtAdresse, txtPostNr, txtCprNr ... så indsæt følgende kode
> event-rutine i din forms kode:
>
> Private Sub txtData_Change()
> Dim pos As Long
> Dim txt As String
> Dim lin As String
> txt = txtData.Text
> pos = InStr(txt, vbCrLf)
> If pos <> 0 Then
> lin = Left$(txt, pos - 1)
> txt = Mid$(txt, pos + 2)
> pos = InStr(lin, " ")
> If pos > 2 And Left$(lin & " ", 1) = "Å" Then
> txtAdresse.Text = Trim$(Mid$(lin, pos))
> lin = Mid$(lin, 2, pos - 2)
> pos = InStr(lin, "&")
> If pos = 0 Then
> txtNavn.Text = lin
> Else
> txtNavn.Text = Mid$(lin, pos + 1) & " " & Left$(lin, pos
> - 1)
> End If
> End If
> pos = InStr(txt, vbCrLf)
> If pos <> 0 Then
> lin = Left$(txt, pos - 1)
> txt = Mid$(txt, pos + 2)
> If Len(lin) = 7 Then
> txtPostNr.Text = Mid$(lin, 4)
> End If
> pos = InStr(txt, vbCrLf)
> If pos <> 0 Then
> lin = Left$(txt, pos - 1)
> If Len(lin) > 19 And Left$(lin & " ", 1) = "*" Then
> txtCprNr.Text = Mid$(lin, 10, 6) & "-" & Mid$(lin,
> 16, 4)
> End If
> txtData.Text = ""
> txtData.SetFocus
> End If
> End If
> End If
> End Sub
>
> Hvis du har problemer, blot sig til.
>
> Mvh. Bjarke
>
>
> --
> Posted via Mailgate.ORG Server - http://www.Mailgate.ORG



Bjarke Walling Peter~ (08-06-2002)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 08-06-02 19:48

Rex skrev:
> Jeg har lidt problemer med at få det til at virke...
> Men MANGE tak for koden...
>
> Jeg pusler lidt med det på søndag, hvis jeg ikke får det til at virke,
> håber jeg det er i orden at jeg stiller dig et par spørgsmål..
>
> -Rex

Det er helt i orden - bare spørg. Det er ærgeligt det ikke virker. :)

Mvh. Bjarke


--
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG

Rex (13-06-2002)
Kommentar
Fra : Rex


Dato : 13-06-02 21:33

Jeg har lagt en meget simpel udgave af dit program i dk.binarer
Under Navnet kortlæser
Gider du ikke kikke på det?

Jan
"Bjarke Walling Petersen" <bwp@bwp.dk> skrev i en meddelelse
news:2cc5e5c735baf22919a9181f42a05678.42843@mygate.mailgate.org...
> Rex skrev:
> > Jeg har lidt problemer med at få det til at virke...
> > Men MANGE tak for koden...
> >
> > Jeg pusler lidt med det på søndag, hvis jeg ikke får det til at virke,
> > håber jeg det er i orden at jeg stiller dig et par spørgsmål..
> >
> > -Rex
>
> Det er helt i orden - bare spørg. Det er ærgeligt det ikke virker. :)
>
> Mvh. Bjarke
>
>
> --
> Posted via Mailgate.ORG Server - http://www.Mailgate.ORG



Bjarke Walling Peter~ (14-06-2002)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 14-06-02 17:18

Rex skrev:
> Jeg har lagt en meget simpel udgave af dit program i dk.binarer
> Under Navnet kortlæser
> Gider du ikke kikke på det?
>
> Jan

Jo, jeg har fundet fejlen, tror jeg ... jeg har nemlig glemt at sige at du
skal sætte txtData's Multiline-property til True. Det må du undskylde! :)
Jeg har lagt en version ind i dk.binaer, som også gør bogstaverne i navnet
små (undtagen startbogstaverne selvfølgelig).
Endnu ved jeg ikke om det virker på personer med mellemnavne, men ellers må
du jo lige sige til ...

Mvh. Bjarke



Rex (14-06-2002)
Kommentar
Fra : Rex


Dato : 14-06-02 19:18

Det virker bedre, men den kommer op med en fejl.

Når den har indskrevet første linie i kortlæser data:
Skriver den Compile error: Only Comments may apear after end sub, end
function or End property.
og markere denne linie gul:

Private Function LowerCaseName(ByVal Name As String) As String

Nogle gane når den at skrive adressen.

-Rex

"Bjarke Walling Petersen" <bwp@bwp.dk> skrev i en meddelelse
news:3d0a1785$0$71664$edfadb0f@dspool01.news.tele.dk...
> Rex skrev:
> > Jeg har lagt en meget simpel udgave af dit program i dk.binarer
> > Under Navnet kortlæser
> > Gider du ikke kikke på det?
> >
> > Jan
>
> Jo, jeg har fundet fejlen, tror jeg ... jeg har nemlig glemt at sige at du
> skal sætte txtData's Multiline-property til True. Det må du undskylde! :)
> Jeg har lagt en version ind i dk.binaer, som også gør bogstaverne i navnet
> små (undtagen startbogstaverne selvfølgelig).
> Endnu ved jeg ikke om det virker på personer med mellemnavne, men ellers

> du jo lige sige til ...
>
> Mvh. Bjarke
>
>



Bjarke Walling Peter~ (14-06-2002)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 14-06-02 21:45

Rex skrev:
> Det virker bedre, men den kommer op med en fejl.
>
> Når den har indskrevet første linie i kortlæser data:
> Skriver den Compile error: Only Comments may apear after end sub, end
> function or End property.
> og markere denne linie gul:
>
> Private Function LowerCaseName(ByVal Name As String) As String
>
> Nogle gane når den at skrive adressen.

Markerer den noget blåt? (så skal du højst sandsynligvis fjerne dette)
Har du selv tilføjet noget kode efter funktionen LowerCaseName? (i så fald
er det løsningen ... at enten fjerne det eller flytte det ind i en
subrutine/funktion)

Bruger du egentlig VB 5.0 eller 6.0?

Mvh. Bjarke



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste