VBA Val-funktion

VBA Val står för Value. Den konverterar matriserna eller strängen som har vissa siffror till rena numeriska värden. Anta att om vi ger "111 One" som inmatning får vi bara "111" som numerisk utgång. Detta är ganska användbart när du arbetar i en data som vi extraherar från någon slags databas. I den databasfilen kan vi möta sådana celler som kan innehålla siffror tillsammans med extra mellanslag, dolda tecken, specialtecken eller alfabet. I så fall kan du använda Val omvandla den strängen till siffror. Som kan användas i vidare analys.

Hur använder jag Excel Val-funktion i VBA?

Låt oss se exemplen på Val i Excel VBA.

Du kan ladda ner denna VBA VAL Excel-mall här - VBA VAL Excel-mall

Exempel 1 - VBA Val

Det är ganska enkelt att implementera. För flera typer av applikationer och koder kommer vi först att bilda en ram med kod som vi kommer att använda flera gånger i ytterligare exempel.

Steg 1: Gå till Infoga menyfliken och välj en modul som visas nedan.

Steg 2: Därefter får vi det tomma fönstret i modulen. I det här, skriv underkategorin av VBA Val i Excel eller så kan du använda valfritt annat namn på underkategorin enligt ditt behov.

Koda:

 Sub VBA_Val () Slut Sub 

Steg 3: Definiera nu en variabel DIM A eller välj något i stället för alfabetet A som tilldela den som variant. Variant tillåter oss att använda alla typer av datatyper medan vi tilldelar värdena i variabeln.

Koda:

 Sub VBA_Val () Dim A As Variant End Sub 

Steg 4: Och tilldela nu alla typer av nummersekvens till variabel A under VBA-funktion VAL . Vi har tilldelat en kombination av sekvensnummer för demonstration som visas nedan med mellanrum mellan dem.

Koda:

 Sub VBA_Val () Dim A Som variant A = Val ("11 22 33") Slut Sub 

Steg 5: Äntligen kommer vi att behöva en meddelanderuta för att skriva ut värden lagrade i variabel A.

Koda:

 Sub VBA_Val () Dim A As Variant A = Val ("11 22 33") MsgBox A End Sub 

Steg 6: Sätt nu koden steg för steg genom att trycka på funktionsknappen F5. Och kör sedan den genom att klicka på uppspelningsknappen under menyfältet som visas nedan. Vi kommer att se att det returnerade värden som lagras i variabeln. En som 112233 som visas nedan. Alla dessa värden är utan mellanslag.

Exempel 2 - VBA Val

I det här exemplet kommer vi att se hur VBA Val-funktionen används för nummer som innehåller några matematiska tecken. För detta kommer vi att ta hänsyn till koden skriven ovan. Vi har tagit fram ramen för koden som kommer att användas i alla exempel, som visas nedan.

Steg 1: Gå till Infoga menyfliken och välj en modul som visas nedan

Steg 2: Som markeras i nedanstående skärmdump, kommer vi att uppdatera värdet mellan parenteser av VAL-funktion.

Koda:

 Sub VBA_Val2 () Dim A As Variant A = Val ("") MsgBox A End Sub 

Steg 3: Nu ska vi infoga valfritt nummer med matematiskt tecken plus (“+”) som visas nedan.

Koda:

 Sub VBA_Val2 () Dim A Som variant A = Val ("+ 111") MsgBox A End Sub 

Steg 4: Sammansätt och kör nu koden. Vi kommer att se, VBA Val har gett värdena 111 utan plustecknet. Det beror på att logiskt sett alla värden med eller utan plustecken alltid är positiva.

Steg 5: Låt oss ändra värdet i Val-funktionen från +111 till -111. Nu kommer vi att se om minustecknet konverteras till värdet eller inte.

Koda:

 Sub VBA_Val2 () Dim A As Variant A = Val ("- 111") MsgBox A End Sub 

Steg 6: Kompilera koden och kör. Vi ser att minustecknet fortfarande finns kvar i värdet och meddelanderutan har returnerat värdet som -111 . Vilket innebär att något annat tecken än plus inte kommer att konverteras med Val-funktion i VBA.

Exempel 3 - VBA Val

I det här exemplet ser vi hur Val-funktionen skulle fungera för tidsformat.

Steg 1: För detta kommer vi att använda det ovan definierade formatet för Excel VBA Val som visas nedan.

Koda:

 Sub VBA_Val3 () Dim A Som variant A = Val ("") MsgBox A End Sub 

Steg 2: Sätt nu in valfritt tidsformat i VAL-funktionen som visas i ovanstående skärmdump. Här lägger vi till 11 AM som visas nedan.

Koda:

 Sub VBA_Val3 () Dim A As Variant A = Val ("11 AM") MsgBox A End Sub 

Steg 3: Sätt nu koden och kör. Vi kommer att se, VAL-funktionen har eliminerat AM från 11 AM och gett oss endast 11 som utgång som visas nedan.

Steg 4: Låt oss nu använda något annat format. Använd några minuter med timmar. Vi har använt värde 11:05 under Val parentes.

Koda:

 Sub VBA_Val3 () Dim A As Variant A = Val ("11:05 AM") MsgBox A End Sub 

Steg 5: Kompilera och kör koden igen. Återigen har Val-funktionen tagit bort kolon- och minutnummer tillsammans med AM och gett oss hela numret 11 som visas nedan.

Exempel 4 - VBA Val

I det här exemplet ser vi hur datumformatet fungerar i detta.

Steg 1: Ställ igen formatet för VBA Val-funktionen tillsammans med den fullständiga koden som vi har sett i exemplen ovan.

Koda:

 Sub VBA_Val4 () Dim A As Variant A = Val ("") MsgBox A End Sub 

Steg 2: Sätt nu in ett datumformat enligt ditt behov. Vi kan infoga data i ett bindestreck ("-") -format i en snedstreck ("/") -format. Låt oss använda snedstreckdataformatet som oftast används.

Koda:

 Sub VBA_Val4 () Dim A As Variant A = Val ("06/26/2019") MsgBox A End Sub 

Steg 3: Sätt nu koden och kör den. Vi kommer att se att VBA Val har returnerat de numeriska värdena som ”6”. Värden efter snedstreck accepteras inte av VBA Val.

Exempel 5 - VBA Val

I det här exemplet ser vi hur detta kommer att fungera när siffrorna är efter texten.

Steg 1: Ta formatet som vi har sett ovan.

Koda:

 Sub VBA_Val2 () Dim A As Variant A = Val ("") MsgBox A End Sub 

Steg 2: Låt oss lägga lite text och siffror i valfunktionskonsoler. Låt oss överväga "AB 11" som visas nedan.

Koda:

 Sub VBA_Val2 () Dim A As Variant A = Val ("AB 11") MsgBox A End Sub 

Steg 3: Kör det nu. Vi kommer att se i meddelandefältet att endast 0 visas. Vilket innebär att VBA Val inte tar hänsyn till siffrorna efter tecken eller text.

Fördelar med VBA Val

  • Det kan användas i data som extraheras från någon form av verktyg eller databas. Som består av olika slags karaktärer tillsammans med siffror.
  • Det är ganska lätt att separera siffror genom att använda VBA Val i alla slags data.
  • Vi kan välja vilket format som består av ett nummer eller en uppsättning nummer för att skilja det från andra tecken.

Saker att komma ihåg

  • Den beaktar också decimalerna.
  • Spara filen som Marco aktiverar excel så att skrivna skulle behållas.
  • Om du registrerar denna process i VBA, kommer den erhållna koden att vara mycket längre än de exempel som vi har sett ovan.
  • Det finns ingen alternativ infogningsfunktion i Excel som ger samma resultat som VBA Val .

Rekommenderade artiklar

Detta är en guide till VBA Val. Här diskuterar vi hur man får Val i VBA Excel tillsammans med praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. VBA InStr förklarade med exempel
  2. VBA heltal datatyp
  3. Hur väljer jag cell med VBA-kod?
  4. Transponera ett intervall i VBA

Kategori: