Avatar billede funkytoget Nybegynder
22. april 2003 - 17:15 Der er 10 kommentarer og
1 løsning

Fjerne en del af en string

Jeg kører en for next sætning hvor jeg adder til en string hver gang. Men i sidste gennemkørsel af for/next skal der kun tilføjes noget af den string, og vil derfor gerne have fjernet det sidste ord fra string.
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:17 #1
er det altid det samme ord som skal fjernes ?
Avatar billede funkytoget Nybegynder
22. april 2003 - 17:19 #2
Ja, opretter en dynamis sql sætning, og tilføjer derfor AND hver gang, men det skal jeg jo ikke ved det sidste argument..

Men ja, det sammer ord er AND
:-)
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:22 #3
ok så er det bare :

slutStreng = Replace(Left(slutStreng,3),"")

Det skulle gerne virke
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:22 #4
så fjerner den de sidste tre tegn fra strengen "slutStreng".
Avatar billede terry Ekspert
22. april 2003 - 17:27 #5
This is how you build a dynamic SQL, but I am not sure why you dont use AND in the last argument!

sSQL = "... WHERE 1 "
..
sSQL = sSQL & " AND ...."
..
sSQL = sSQL & " AND ...."
Avatar billede terry Ekspert
22. april 2003 - 17:28 #6
dont you mean the first? This is why you can use "WHERE 1"

so if there are no AND you will just have

SELECT ..... WHERE 1
which is the same as EVERYTHING!
Avatar billede mugs Novice
22. april 2003 - 17:36 #7
For at isolere det sidste ord i en string kan du bruge denne kode:

Dim SearchChar As String
Dim SearchString As String
Dim Streng As String
SearchChar = " "
SearchString = felt1
Streng = felt1
felt2 = Right(String:=Streng, length:=(InStr(1, SearchString, SearchChar, 1) - 1))

SearchChar er det tegn der adskiller det sidste ord fra det foregående. Her et mellemrum.
SearchString er det felt der indeholder den streng der skal søges på.
felt2 tildeles det sidste ord i en streng.
Avatar billede funkytoget Nybegynder
22. april 2003 - 17:55 #8
Sql = Replace(Left(Sql, 3), "")

Den siger argument not optional.

Sql er en string, og fået alle mulighederne når jeg trykker parantes start, men kan ikke få den helt til at virke
Avatar billede terry Ekspert
22. april 2003 - 18:24 #9
funkytoget>WHY do you need to remove AND in the last loop?
22. april 2003 - 18:51 #10
SQLStr = Left(SQLStr, Len(SQLStr)-Len(" AND "))

I ovenstående tilfælde fjernes 5 tegn, da jeg også har regnet med, at der er mellemrum omkring 'AND'. Du kan selv ændre indholdet af den sidste Len(" AND "), hvis dette ikke er tilfældet.

/Thomas
22. april 2003 - 18:52 #11
Din termonologi:
SQL = Left(SQL, Len(SQL)-Len(" AND "))
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