Avatar billede -anders- Juniormester
02. december 2017 - 17:02 Der er 5 kommentarer og
1 løsning

Vise dele af tekststreng i et beregnet felt i en forespørgsel baseret på tekst i et andet felt

Hej Eksperter

Jeg arbejder i Access 2010

I en forespørgsel har jeg et tekstfelt med navnet Organization, i dette tekstfelt vises en lang tekststreng med nedenstående syntaks:

Tekst1:Tekst2:Tekst3:Tekst4:Tekst5

Som man kan se, er tekststrengen separeret med et kolon

Er det muligt, i et beregnet felt i min forespørgsel, kun at vise sidste del af teksten, altså tekst5?

Jeg har fumlet lidt med med Right funktionen, og forsøgt at tælle fra højre mod venstre indtil jeg "rammer" det kolon efter Tekst4, men jeg kan ikke finde ud af syntaksen.
Inholdet af Tekst1 til 5 Variere noget, men ens for hver tekst, er at de sepereres med kolon.

Hvis det muligt, er der så nogen der har et bud hvordan syntaksen skal skrives.

På forhånd tak.

Hilsen
Anders.
Avatar billede martens Guru
02. december 2017 - 18:27 #1
Selvfølgelig kan man det .... ;o)


Du er ude i noget a´la dette :


SELECT Right([Organization],InStr([Organization],":")-1) AS DetFemteElement
FROM tbl_OrgInfo;

mvh martens
Avatar billede martens Guru
02. december 2017 - 18:29 #2
men i den DANSKE version er der OFTE konflikter med Komma og Semikolon


så her den DANSKE version :

DetFemteElement: Right([Organization];InStr([Organization];":")-1)
Avatar billede -anders- Juniormester
02. december 2017 - 19:03 #3
Hej Martens

Tak for dit indlæg.

Jeg skriver din syntaks ind på et beregnet felt i min forespørgsel jf. nedenstående:

Udtryk1: Right([Organization],InStr([Organization],":")-1)

Når jeg køre forespørgselen vises kun de 3 sidste karakter i det beregnet felt. Hvis Tekst5 fx er Virksomhedsservice vises der kun ice. Så det ser ud som at syntaksen ikke "bakker bag ud" til kolon efter tekst4.
Avatar billede martens Guru
02. december 2017 - 19:29 #4
Ja det spiller ikke som det bør ;o)

Men jeg har løsningen til dig !!!!

Opret et modul og smid nedenstående ind :

Public Function ParseText(TextIn As String, X) As Variant
On Error Resume Next
Dim var As Variant
var = Split(TextIn, ":", -1)
ParseText = var(X)
End Function
------------------------------
Smid så dette ind i din forespørgsel :
-------------------------------------------------------------

FifthElement: ParseText([Organization];4)

-------------------------------------------------------------
VUPTI !!!

mvh martens
Avatar billede -anders- Juniormester
02. december 2017 - 19:52 #5
Hej Martens

Så spiller det :-)

Du skal have mange tak for hjælpen.
Ha ' en god weekend :-)

Hilsen
Anders.
Avatar billede martens Guru
02. december 2017 - 20:14 #6
Det var skam så lidt ;o)

også god weekend til dig !

mvh martens
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