Avatar billede mundt Nybegynder
13. september 2004 - 15:36 Der er 16 kommentarer og
1 løsning

Problem med at 'barbere' førrste 5 tegn af en tekst i en kolonne

Jeg har en forspørgsel hvor navne fremgår i et langt format. Jeg ønsker at lave en kolonne mere i forespørgslen hvor samme navne fremgår i kort format. Nærmere betegnet skal dette vises med de første 5 karakterer fra navnet i det lange format. F.eks. hedder et navn i det lange format 'skovriddergården'. Dette skal i det korte format hedde 'skovr'. I forspørgslens felt har jeg skrevet
Kortnavn: Left([Langtnavn];5) og får umiddelbart følgende fejlbesked: Der opstod en kompileringsfejl i forespørgselsudtrykket Kortnavn: "Left([Langtnavn];5)"

Hvad gør jeg galt?
13. september 2004 - 15:43 #1
Kortnavn: Left([Langtnavn];5)
Avatar billede jensen363 Forsker
13. september 2004 - 15:44 #2
Uforklareligt ... korrekt syntax ...
Prøv eventuelt at kopiere databasen over i en ny
13. september 2004 - 15:46 #3
Prøv noget mindre drastisk først - opret en ny forespørgsel.
13. september 2004 - 15:48 #4
Det kan også være dine referencer, som der er noget galt med: prøv at gå i VBA-editoren (Alt+F11) og derefter i menuen Tools->references

Hvis der står "MISSING..." ud for en af dine afkrydsede referencer, er det fejlen.
Avatar billede mundt Nybegynder
13. september 2004 - 15:51 #5
Jeg mangler ikke nogle referencer og har i andre felter i forespørgslen også henvist til andre felter uden problemer.
13. september 2004 - 15:56 #6
Er langtnavn et felt i tabellen? eller er det et beregnet felt?
Avatar billede mundt Nybegynder
14. september 2004 - 08:37 #7
Det er et beregnet felt
14. september 2004 - 08:46 #8
ok, så er det nok derfor. Når dette felt er tomt (Null), kan der opstå fejl.

Prøv med:
Kortnavn: iif(isnull([Langtnavn]);"";Left([Langtnavn];5))
Avatar billede mundt Nybegynder
14. september 2004 - 08:56 #9
Den kommer med samme meddelse udanset om det er et beregnet felt eller et felt i tabellen. Hvilke referencer skal jeg have hakket af i references?
Avatar billede mundt Nybegynder
14. september 2004 - 08:58 #10
Leftfunktionen fungerer i immidiatevinduet i VBA???
14. september 2004 - 09:01 #11
Du skal soom minimum have:
-Visual basic for applications
-Microsoft Access X.0 Object Library
-OLE Automation

derudover har du formentlig enten DAO eller ActiveX Data Objects
Og hvis Left fungerere i immidiate-vinduet, så lyder det ikke som om det er referencerne, den er gal med.

Kan du bruge andre udtryk i forespørgslen:
f.eks. Len([Langtnavn])?
Avatar billede mundt Nybegynder
14. september 2004 - 09:03 #12
Nix - den funker heller ikke?
14. september 2004 - 09:07 #13
Er det kun i den forespørgsel? Eller er det alle forespørgsler som ikke virker?
Og næste spm: er det kun i den database? Eller er det også i andre databaser på samme maskine?
Avatar billede mundt Nybegynder
14. september 2004 - 09:13 #14
Alle forspørgsler virker ikke, men hvis jeg laver en ny tabel i en ny database og efterfølgende lave en forespørgsel virker det.
14. september 2004 - 09:19 #15
Har du kompileret din kode for nyligt? (Debug->compile databasenavn, når du står i VBA-editoren)
Avatar billede mundt Nybegynder
14. september 2004 - 09:24 #16
Nu virker det. Det viste sig at jeg havde gemt et modul med forkert syntaks i koden. Jeg slettede derfor modulet og nu funker det. Kanon!!! Mange tak for hjælpen!!!
14. september 2004 - 09:32 #17
ja, det slog mig lige, at når den skrev "Kompilerings fejl", så var det jo et helt andet sted, vi skulle kigge :o)

Man kan af og til stirre sig blind på sådan nogle bagateller...

tak for point :o)
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