Avatar billede faroe Nybegynder
29. april 2001 - 22:34 Der er 11 kommentarer og
1 løsning

Erstat et tegn í et felt med et anet tegn

er der nogen som kan svare mej på dete
1. skal man bruge et modul eller
2. skal man bruge et kriteriet í en forespørgsle.

elle et eksempel vårdan man gør.


Avatar billede burningice Nybegynder
30. april 2001 - 00:27 #1
replace(tekststreng, det_som_skal_erstattes, det_som_det_skal_erstattes_med)

f.eks. replace(request.form(\"felt\"), \"a\", \"b\")
Avatar billede burningice Nybegynder
30. april 2001 - 00:28 #2
well.. det er i hvert fald i vb script så mon ikke man kan bruge det i access også??
Avatar billede terry Ekspert
30. april 2001 - 13:04 #3
If you use a modul then you can use this where ever its needed also in your queries.

MODUL will look something like this(can be optimized).

Public Function MyMod(MyStr As String, cIn As String, cOut As String) As String
Dim tmpStr As String
Dim i As Integer
Dim j As Variant
    tmpStr = MyStr
    For i = 1 To Len(tmpStr)
        j = InStr(i, tmpStr, cIn, vbBinaryCompare)
        If Not IsNull(j) And j > 0 Then
            Mid(tmpStr, j) = cOut
        End If
    Next i
    MyMod = tmpStr
End Function

and a querie will look something like this

SELECT tbl1.Field1, MyMod([Field1],\"t\",\"T\") AS erstat
FROM tbl1;

Avatar billede terry Ekspert
30. april 2001 - 13:05 #4
The MyMod function takes three parameters. The first is the string to convert. Second is the character to convert and the third is the character to convert to.
Avatar billede faroe Nybegynder
30. april 2001 - 18:26 #5
jeg skal erstate flere tegn i feltet
er det muligt med en utryksgenerrator eller skal man bruge et modul

her kan man kun erstate et tegn.

SELECT tbl1.Field1, MyMod([Field1],\"t\",\"T\") AS erstat
FROM tbl1;
Avatar billede terry Ekspert
01. maj 2001 - 07:55 #6
The example I sent answers your question. Erstat et tegn....

Modify the function to take just the first parameter (MyStr) then alter the function to erstat the chracters you want. The SELECT would then look like this.
SELECT tbl1.Field1, MyMod([Field1]) AS erstat
FROM tbl1;
Avatar billede faroe Nybegynder
03. maj 2001 - 21:47 #7
jeg skal skiftr flere tegn ud.

if tekst = å then tekst = a
if tekst = W then tekst = z

og so videre.

jeg má nok bruge et modul???.
Avatar billede faroe Nybegynder
03. maj 2001 - 21:50 #8
p.s. dette er en tabel med forkert tegnset.
Avatar billede terry Ekspert
04. maj 2001 - 08:06 #9
As far as i can see you should use a module.

The first answer I gave uses a module which gets called from your query.
The function MyMod can quite easily be modified to convert more than one character. If you need help on this then let me know.

Does this clear things up?
Avatar billede terry Ekspert
22. maj 2001 - 15:19 #10
Hi fareo!

Its a while since your question got answered, do you intend responding?
Avatar billede faroe Nybegynder
22. maj 2001 - 15:52 #11
JEG FORSTÅR IKKE MODULET VIS JEG SKAL ERSTATTE FLERE TEGN JEG KAN KUN FINDE UD AF AT ERSTATTE
ET TEGN AD GANGEN KAN DU VISE MEJ VÅRDAN MAN ERSTATTER FLERE TEGN AD GANGEN
MANGE GANGE TAK FÅR HJELPEN
 
Avatar billede terry Ekspert
23. maj 2001 - 12:22 #12
If you want to convert further characters then just add a new case in the select case.

Public Function MyMod(MyStr As String) As String
Dim tmpStr As String
Dim i As Integer

    tmpStr = Trim(MyStr)
   
    \'Loop through whole string
    For i = 1 To Len(tmpStr)
       
        Select Case Mid(MyStr, i, 1)
       
            Case \"å\"
                    Mid(tmpStr, i) = \"a\"
                   
            Case \"W\"
                    Mid(tmpStr, i) = \"z\"
            Case Else
           
        End Select
       
    Next i
   
    MyMod = tmpStr

End Function

a querie will look something like this

SELECT tbl1.Field1, MyMod([Field1]) AS erstat
FROM tbl1;
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