Avatar billede mim007 Nybegynder
12. august 2005 - 12:51 Der er 14 kommentarer og
1 løsning

S: trække data ud af en celle

hvordan hiver jeg alt i ud af en række celler frem til første mellemrum regnet fra venstre
Det må være noget med Left(
Avatar billede overchord Nybegynder
12. august 2005 - 12:55 #1
Function LeftSide(Teksten as String) as string
dim i as Integer
dim SpacePos as integer

SpacePos = 0

for i = 1 to len(Teksten)
  if mid(Teksten, i,1) = " " then
  SpacePos = i
  end if
Next i

if SpacePos <>0 then
  LeftSide = Left(Teksten,i)
else
  Leftside = Teksten
End if


Har ikke lige testet den, men burde virke.
Avatar billede mim007 Nybegynder
12. august 2005 - 13:00 #2
den skal bare smide alt ud efter første mellemrum. Kan det så gøres enklere?
Avatar billede overchord Nybegynder
12. august 2005 - 13:11 #3
Det kommer lidt an paa hvilken version af access du har, men hvis det er en nyere, saa proev med:

Left(Teksten, (Instr(Teksten, " ")))
Avatar billede mim007 Nybegynder
12. august 2005 - 13:17 #4
Jeg smider følgende ind:
Left([Hushandel110805]![ret],(Instr([Hushandel110805]![ret]," ")))
Får en syntaksfejl (ugyldig) og den hopper hen til det første kommai formlen
Avatar billede overchord Nybegynder
12. august 2005 - 13:20 #5
ok, hvilken version af access har du?

Og hvad sker der hvis du blot smider
Instr([Hushandel110805]![ret]," "))

ind til at starte med - hvis den virker skulle den retunere et nummber

Alternativt proev med
Instr([Hushandel110805]![ret],char(32)))
Avatar billede mim007 Nybegynder
12. august 2005 - 13:22 #6
ingen af dem virker. Jeg har access 2003
Avatar billede kabbak Professor
12. august 2005 - 13:23 #7
hvis det er i en forespørgsel bruges ;

Left([Hushandel110805]![ret];(Instr([Hushandel110805]![ret];" ")))
Avatar billede mim007 Nybegynder
12. august 2005 - 13:25 #8
hej den første virker nu ved at ændre formlen til:
InStr([Hushandel110805]![ret];" ")
Altså slette den sidste parantes og udskifte , til;. Men jeg skal jo have tekst og ikke et nummer
Avatar billede mim007 Nybegynder
12. august 2005 - 13:27 #9
hej din sidste formel virker bortset fra, at alle dem, som er ok bliver ombytter til tomme celler.
Avatar billede overchord Nybegynder
12. august 2005 - 13:27 #10
ok jeg har testet i Access 2003 med f;g i en forespoerglsen paa et felt med navne:
Fornavn: Left([Test]![Navn],(InStr(1,[Test]![Navn]," ")))

Det virker ok, saa dine udgave maa blive:
Left([Hushandel110805]![ret],(Instr(1,[Hushandel110805]![ret]," ")))
Avatar billede overchord Nybegynder
12. august 2005 - 13:30 #11
ok dem er er ok er dem uden mellemrum i teskten eller hvordan?

Hvis det er tilfaeldet maa udtrykket blive:
iif(isnull(Instr(1;[Hushandel110805]![ret];" "));[Hushandel110805]![ret]; Left([Hushandel110805]![ret];(Instr(1;[Hushandel110805]![ret];" "))))
Avatar billede mim007 Nybegynder
12. august 2005 - 13:32 #12
det virker ikke helt
Mine data ser således ud:

Odense
Odense
Århus
Århus bla bla

Det skal ændres til:
Odense
Odense
Århus
Århus
Avatar billede overchord Nybegynder
12. august 2005 - 13:40 #13
ok proev med :
iif(Instr(1;[Hushandel110805]![ret];" ")=0;[Hushandel110805]![ret]; Left([Hushandel110805]![ret];(Instr(1;[Hushandel110805]![ret];" "))))
Avatar billede mim007 Nybegynder
12. august 2005 - 13:43 #14
lavede den selv i samme øjeblik :-)
Tak god weekend
Avatar billede overchord Nybegynder
12. august 2005 - 14:00 #15
Godt at det virkede!
God weekend :-)
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