Avatar billede deicer Nybegynder
09. januar 2008 - 12:53 Der er 5 kommentarer og
1 løsning

MoveFirst (access/vb)

Hej

Jeg har en linje som hedder:

Hus 1: Markedvej (2600)

Jeg vil - i vb - have dette lagt ind i en access database under

Nr    Navn        Postnr
1    Markedvej  2600

Næste linje kan f.eks være

Hus 212: Baystreet (90210)

Så datbasen kommer - forhåbenligt - til at se således ud:

Nr    Navn        Postnr
1    Markedvej  2600
212  Baystreet  90210

Mit problem er at når jeg bruger .MoveFirst så tager den hele teksten(string) med. F.eks:

.MoveFirst
a = Mid(!tekstfelt, 5) 'Nr
b = Mid(!tekstfelt, (Len(a) + 3)) 'Navn
c = Mid(!tekstfelt, (Len(b) + 3)) 'Postnr

Så kommer databasen ser således ud:
Nr                    Navn              Postnr
212: Baystreet (90210) Baystreet (90210) 90210)

Hvordan sikre jeg mig at jeg "kun" får de data jeg ønsker og IKKE resten af teksten(string).

Jeg har forsøgt mig frem med Long, Integer, Single osv. - uden held.

På forhånd tak.
Avatar billede supertekst Ekspert
09. januar 2008 - 13:14 #1
Så vist jeg kan se:

Du skal beregne det præcise antal tegn i din Mid-sætning - d.v.s. parameter 3 mangler - i det tilfælde tager den resten af strengen med udgangspunkr i parameter 2.
Avatar billede deicer Nybegynder
09. januar 2008 - 13:47 #2
Hej super

Tak for svaret.

Kan du komme med et eksempel?

Er det blot:
a = Mid(!tekstfelt, 5, 6) 'Nr ?

Men dette gælder kun for 1 char, der kan forekomme 2 eller 3 chars (1, 212, 10040 osv)

Pft.
Avatar billede terry Ekspert
09. januar 2008 - 13:49 #3
replace f with !tekstfelt. An dnote this will only work if the layout is a described.

a = Mid(f, 5, InStr(1, f, ":") - 5) 'Nr
b = Mid(f, (InStr(1, f, ":") + 2), (InStr(1, f, "(") - 1) - (InStr(1, f, ":") + 2))        'Navn
c = Mid(f, (InStr(1, f, "(") + 1), (InStr(1, f, ")")) - (InStr(1, f, "(") + 1))  'Postnr
Avatar billede terry Ekspert
09. januar 2008 - 13:50 #4
Or instead of replacing f with !tekstfelt

you could use

Dim f as string
f = !tekstfelt
Avatar billede deicer Nybegynder
09. januar 2008 - 14:16 #5
Your the man, terry

Thanks !
Avatar billede terry Ekspert
09. januar 2008 - 14:19 #6
selv tak
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester