Obs!: Vi vill kunna erbjuda dig bästa möjliga supportinnehåll så fort som möjligt och på ditt språk. Den här sidan har översatts med hjälp av automatiserad översättning och kan innehålla grammatiska fel eller andra felaktigheter. Vår avsikt är att den här informationen ska vara användbar för dig. Vill du berätta för oss om informationen är till hjälp längst ned på sidan? Här är artikeln på engelska som referens.
Med strängfunktioner, kan du skapa uttryck i Access som hanterar text på flera olika sätt. Du kanske vill visa en del av ett serienummer i ett formulär. Eller så kan du behöva koppling (sammanfoga) flera strängar tillsammans, till exempel ett efternamn och förnamn. Om du inte smarta med uttryck ännu, finns i Skapa ett uttryck.
Här är en lista över några av de vanliga strängåtgärder i Access och vilka funktioner du behöver använda för dem:
Om du vill… | Använd... | Exempel... | Resultat |
---|---|---|---|
Returnera tecken från början av en sträng |
=Left([SerialNumber],2) |
Om [SerialNumber] är ”CD234” blir resultatet ”CD”. |
|
Returnera tecken från slutet av en sträng |
=Right([SerialNumber],3) |
Om [SerialNumber] är ”CD234” blir resultatet ”234”. |
|
Hitta ett teckens position i en sträng |
=InStr(1,[FirstName],"l") |
Om [FirstName] är ”Karl” blir resultatet 4. |
|
Returnera tecken från mitten av en sträng |
=Mid([SerialNumber],2,2) |
Om [SerialNumber] är ”CD234” blir resultatet ”D2”. |
|
Rensar inledande och avslutande blanksteg i en sträng |
=Rensa([Förnamn]) |
Om [Förnamn] är " Colin " blir resultatet "Colin". |
|
Sammanfoga två strängar |
Operatorn plustecken (+)* |
=[FirstName] + [LastName] |
Om [FirstName] är ”Karl” och [LastName] är Nilsson blir resultatet ”KarlNilsson” |
Sammanfoga två strängar med ett blanksteg mellan dem |
Operatorn plustecken (+)* |
=[FirstName] + “ “ + [LastName] |
Om [FirstName] är ”Karl” och [LastName] är Nilsson blir resultatet ”Karl Nilsson” |
Ändra en sträng från versaler eller gemener |
=UCase([FirstName]) |
Om [FirstName] är ”Karl” blir resultatet ”KARL”. |
|
Fastställa längden för en sträng |
=Len([FirstName]) |
Om [FirstName] är ”Karl” blir resultatet 4. |
* Det är sant att det inte är en funktion utan en operator. Det är dock det snabbaste sättet att sammanfoga två strängar. I en skrivbordsdatabas kan du även använda operatorn et (&) om du vill sammanfoga. I ett Access-program måste du använda plustecknet (+).
Det finns många fler textrelaterade funktioner i Access. Om du vill läsa mer om dessa kan du öppna Uttrycksverktyget och bläddra igenom listan med funktioner. Du når Uttrycksverktyget på nästan alla ställen där det går att skapa uttryck. Det finns vanligtvis en knapp för att Skapa som ser ut så här:
Om du vill visa Uttrycksverktyget vi öppna egenskapen Kontrollkälla på ett formulär eller en vy. Använd en av procedurerna nedan beroende på om du använder en lokal databas eller en Access-webbprogram.
Visa Uttrycksverktyget i en skrivbordsdatabas
-
Öppna en skrivbordsdatabas (.accdb).
-
Öppna navigeringsfönstret genom att trycka på F11.
-
Om du redan har ett tillgängligt formulär högerklickar du i navigeringsfönstret och klickar på Layout. Om du inte har ett formulär som du kan arbeta med klickar du på Skapa > Formulär.
-
Högerklicka i en textruta i formuläret och klicka på Egenskaper.
-
På Egenskapssidan klickar du på Alla > Kontrollkälla och sedan klickar du på knappen Skapa
till höger om egenskapsrutan Kontrollkälla.
-
Under Uttryckselement visar du noden Funktioner och klickar på Inbyggda funktioner.
-
Klicka på Text under Uttryckskategorier.
-
Under Uttrycksvärden kan du klicka på de olika funktionerna och visa korta beskrivningar längst ned i Uttrycksverktyget.
Obs!: Alla funktionerna är inte tillgängliga i alla sammanhang. Listan filtreras automatiskt i Access beroende på vilka funktioner som kan användas i respektive sammanhang.
Visa Uttrycksverktyget i ett Access-webbprogram
-
Öppna webbprogrammet i Access. Om du visar i webbläsaren, klickar du på Inställningar > Anpassa i Access.
-
Klicka i en tabell i den vänstra kolumnen och välj sedan ett vynamn till höger om tabellistan.
-
Klicka först på Redigera och sedan på en textruta. Därefter klickar du på knappen Information som visas bredvid textrutan.
-
Klicka på knappen Skapa
till höger om listrutan Kontrollkälla.
-
Under Uttryckselement visar du noden Funktioner och klickar på Inbyggda funktioner.
-
Klicka på Text under Uttryckskategorier.
-
Under Uttrycksvärden kan du klicka på de olika funktionerna och visa korta beskrivningar längst ned i Uttrycksverktyget.
Öka flexibiliteten genom att kombinera textfunktioner
Vissa strängfunktioner innehåller sifferargument och ibland krävs det en beräkning varje gång funktionen anropas. Funktionen Left kan innehålla både en sträng och en siffra. t.ex. =Left(SerialNumber, 2). Detta är inget problem om du alltid behöver de två tecknen längst till vänster. Men hur gör du om antalet tecken som du behöver varierar mellan olika objekt? I stället för att ”hårdkoda” antalet tecken kan du beräkna det med en annan funktion.
I det här exemplet innehåller serienumren ett bindestreck. Bindestreckens placering i strängarna varierar dock:
SerialNumber |
---|
3928-29993 |
23-9923 |
333-53234 |
3399940-444 |
Om du endast vill visa siffrorna till vänster om bindestrecken krävs en beräkning varje gång för att avgöra var bindestrecken är placerade. Detta kan göras t.ex. så här:
=Left([SerialNumber],InStr(1,[SerialNumber],"-")-1)
I stället för att ange ett tal som andra argument för funktionen vänster har vi ansluten Funktionen InStr, vilket Returnerar positionen för bindestrecket i serienumret. Subtrahera 1 från det värdet och du får rätt antal tecken för funktionen vänster att returnera. Verkar lite komplicerade högst först, men med en liten experiment som du kan kombinera två eller flera uttryck för att få de resultat som du vill använda.
Mer information om hur du använder strängfunktioner finns i använda strängfunktioner i dina Access SQL-frågor.