Avatar billede maxmull Nybegynder
06. juni 2004 - 00:44 Der er 23 kommentarer og
4 løsninger

Fjern mellemrum i telefonnr

Kan man ikke lave en Macro der kan fjerne alle mellemrum i en kolonde med telefon numre?
Avatar billede kabbak Professor
06. juni 2004 - 00:50 #1
brug søg og erstat i tabbellen

søg på mellemrum og skriv intet i erstat
Avatar billede kabbak Professor
06. juni 2004 - 00:54 #2
det kan også være feltet i tabellen, som har formatet sat til mellemrum, så skal du ændre i designvisning.
Avatar billede maxmull Nybegynder
06. juni 2004 - 01:05 #3
Det kan ikke lade sig gøre!
Felt typen er tekst og det er ikke en formatering der er sat
Avatar billede maxmull Nybegynder
06. juni 2004 - 01:24 #4
Jeg har en masse telefon numre der ser sådan her ud 12 12 12 12 de skulle gerne se sådan ud 12121212
Avatar billede kimovitch Nybegynder
06. juni 2004 - 01:47 #5
Opret et modul, der fjerner mellemrum:

Function FjernBlanke(str As String) As String
    ReplaceQ = Replace(str, " ", "")
End Function

I databasen kører du en forespørgsel på tabellen:
  SELECT ReplaceQ([tlf]," ","") AS Exp1 FROM tabelNavn;

-Kim
Avatar billede kimovitch Nybegynder
06. juni 2004 - 01:49 #6
SORRY - det er sent. Her er en rettelse:

Function FjernBlanke(str As String) As String
    FjernBlanke= Replace(str, " ", "")
End Function

I databasen kører du en forespørgsel på tabellen:
  SELECT FjernBlanke([tlf]," ","") AS Exp1 FROM tabelNavn;

-Kim
Avatar billede kimovitch Nybegynder
06. juni 2004 - 01:51 #7
Øh bøh... det er tid at gå i seng...her er del 2 for tredje gang:

  SELECT FjernBlanke([tlf]) AS Exp1 FROM tabelNavn;
-Kim
Avatar billede mugs Novice
06. juni 2004 - 08:06 #8
Hvis det kun skal gøres een gang, vil jeg godt forsvare denne som er afprøvet og fungerer:

Private Sub Kommandoknap3_Click()
Set rs = CurrentDb.OpenRecordset("TABELNAVN")
Do Until Me.NewRecord = True
FELTNAVN = Replace(FELTNAVN, " ", "")
DoCmd.GoToRecord acForm, "FORMULARNAVN", acNext, 1
Loop
rs.Close
Set rs = Nothing
End Sub

Idet du ændrer TABELNAVN til navnet åp din aktuelle tabel. FELTNAVN er navnet på det felt der indeholder dine telefonnumrer og FORMULARNAVN er navnet på din formular.
Avatar billede terry Ekspert
06. juni 2004 - 09:45 #9
Make an UPDATE query

UPDATE YourTable SET TheTelephoneField = Replace([TheTelephoneField ]," ","");
Avatar billede terry Ekspert
06. juni 2004 - 09:46 #10
YourTable = the name of your table and TheTelephoneField = the name of the field containing the telephone number
Avatar billede kimovitch Nybegynder
06. juni 2004 - 10:03 #11
> Terry: Replace funktionen kan ikke bruges i Access sql.
-Kim
Avatar billede mugs Novice
06. juni 2004 - 10:07 #12
Kim > Jo, terry's svar fungerer perfekt.
Avatar billede kimovitch Nybegynder
06. juni 2004 - 10:18 #13
OK, min udgave af Access kendte den ikke...
Avatar billede mugs Novice
06. juni 2004 - 10:23 #14
:o)
Avatar billede terry Ekspert
06. juni 2004 - 14:14 #15
what version of Access are you using? I think replace first cane in Access VBA from 2000.
Anyway, you can make a functionin a module

Function RemoveSpaces(Str As String) As String
Dim i As Integer
Dim wStr As String

   
    For i = 1 To Len(Str)
        If Mid(Str, i, 1) <> " " Then wStr = wStr & Mid(Str, i, 1)
    Next i
    RemoveSpaces = wStr

End Function


Then alter the query
Avatar billede terry Ekspert
06. juni 2004 - 14:14 #16
to

UPDATE YourTable SET TheTelephoneField = RemoveSpaces([TheTelephoneField ]);
Avatar billede kimovitch Nybegynder
06. juni 2004 - 16:55 #17
> terry: I use Access 2000 - replace works in VBA but not if I use it directly in a query.
Avatar billede terry Ekspert
06. juni 2004 - 17:28 #18
It does for me in XP and I would think that if it is OK in VBA 2000 then it is also OK in a query.
What is the problem in a query ?
Avatar billede kimovitch Nybegynder
06. juni 2004 - 17:41 #19
I get an error: 'der er en ikke-defineret funktion "Replace" i udtrykket'
Avatar billede terry Ekspert
06. juni 2004 - 17:59 #20
Yes it seems that its available directly in VBA but not as a function in queries. Silly!
So your function should do the trick. Although you better place an answer if you have any chance at all in getting any points :o)

Function FjernBlanke(str As String) As String
    FjernBlanke= Replace(str, " ", "")
End Function
Avatar billede terry Ekspert
06. juni 2004 - 18:21 #21
this works OK I think

First thing, place this line at the top of each module (form etc.) It makes usre your variables are declared so that you dont get unexpected errors.

Option Explicit


Private Sub cmdOK_Click()
Dim ObjW As Object

    On Error Resume Next
    SetFocus
    Set ObjW = GetObject(, "Word.Application")
    If Err = 429 Then 'Not running
        Set ObjW = CreateObject("Word.Application")
    End If
    With ObjW

        Select Case True
            Case Option1.Value
                '.Visible = True
                .Documents.Add ("D:\flc_Menu\flc-standard.dot"), False
                'Unload HovedMenu
                '.Activate
            Case Option2.Value
                .Visible = True
                .Documents.Add ("D:\flc_Menu\FLC-Faxskrivelse.dot"), False
                Unload HovedMenu
                .Activate
            Case Option3.Value
                .Visible = True
                .Documents.Add ("D:\flc_Menu\FLC-Flgskrivelse.dot"), False
                Unload HovedMenu
                .Activate
            Case Option4.Value
                .Visible = True
                .Documents.Add ("D:\flc_Menu\FLC-Nord BrugerData.dot"), False
                Unload HovedMenu
                .Activate
        End Select
        .Activate
        .Visible = True
        .UserControl = True

    End With
End Sub
Avatar billede terry Ekspert
06. juni 2004 - 18:21 #22
Sorry! This is from another question :o)
Avatar billede terry Ekspert
07. juni 2004 - 12:11 #23
maxmull, hows it going here?
Avatar billede terry Ekspert
10. juni 2004 - 20:59 #24
hello!
Avatar billede terry Ekspert
15. juni 2004 - 14:44 #25
have you gone on your summer holidays already? :o)
Avatar billede maxmull Nybegynder
16. juni 2004 - 00:15 #26
Jeg er ked af at det har taget mig så lang tid at melde tilbage på de gode svar og komentare til dette spørgsmål. Af en eller anden grund har jeg ikke fået en mail når noget har lavet et indlæg.

Jeg beklager!!

Jeg har bruget terry's svar med at lavet en UPDATE query det virkede perfekt i min Access XP
Avatar billede terry Ekspert
16. juni 2004 - 18:57 #27
thanks maxmull
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