VBA-verdi - Hvordan bruker jeg Excel VBA Value-funksjon?

Innholdsfortegnelse:

Anonim

VBA-verdi

Reisen til VBA starter med å vite hvordan verdiene blir lagret i cellene. Derfor er det viktigere å kjenne VALUE-funksjon under VBA. Etter å ha studert om VBA VALUE-egenskap, vil du kunne vite hvordan verdiene blir lagret under VBA. Denne artikkelen forklarer alle typer VALUE-funksjon i VBA, for eksempel hvordan verdien lagres i celler, varm for å angi verdien, hvordan du setter inn verdien og mange flere.

Hvordan bruker jeg Excel VBA Value-funksjon?

Vi lærer hvordan du bruker VBA Value-funksjonen med få eksempler i Excel.

Du kan laste ned denne VBA Value Excel-malen her - VBA Value Excel Template

Eksempel 1 - Angi celleverdi ved å bruke Range.Value-funksjonen

Innstilling av celle / s-verdi ved hjelp av Range. Verdifunksjon består omtrent av to viktige trinn:

  • Angi området der du vil at verdien skal lagres.
  • Tilordne en verdi til rekkevidden som er satt.

Følg trinnene nedenfor for å angi verdi i Excel VBA:

Trinn 1: Sett inn en ny modul under Visual Basic Editor (VBE).

Trinn 2: Definer en ny delprosedyre under den innsatte modulen slik at en makro kan lagres i den.

Kode:

 Sub VBA_Value_Ex1 () Slutt Sub 

Trinn 3: Definer en ny variabel som et område som kan brukes til å definere et område der du ønsket å lagre verdien.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range End Sub 

Trinn 4: Ved hjelp av VBA RANGE-funksjonen tilordner du cellene i området til en variabel definert ved hjelp av tildelingsoperatøren.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") Slutt Sub 

Trinn 5: Bruk egenskapen Range.Value for å kunne tildele verdi til det definerte området. Skriv inn variabelnavnet “setValue_Var” som området er definert under.

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var End Sub 

Trinn 6: Sett en prikk (.) Etter variabel for å kunne velge IntelliSense-listen over funksjoner som er tilgjengelige for denne definerte rekkevariabelen.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var. Slutt sub 

Trinn 7: Dra ned gjennom listen og velg “Verdi” -funksjon for å lagre verdien under denne rekkevidden.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value End Sub 

Trinn 8: Tildel “Welcome to the world of VBA!” Som verdi til dette området ved hjelp av oppdragsoperatør.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1") setValue_Var.Value = "Velkommen til VBAs verden!" Slutt sub 

Trinn 9: Vi er ferdige med kodingsdelen. Kjør denne koden ved å trykke på F5 eller Run-knappen under VBE og se utgangen.

Du kan også tilordne verdien til et område med celler. Alt du trenger å gjøre er å angi området for utdataene du vil gi endimensjonal matrise i stedet for en enkeltcellereferanse.

Trinn 10: I samme kode ovenfor, endre rekkevidden fra “A1” til “A1: A5”.

Kode:

 Sub VBA_Value_Ex1 () Dim setValue_Var Som Range Set setValue_Var = ThisWorkbook.Worksheets ("Setting_Cell_Value_1"). Range ("A1: A5") setValue_Var.Value = "Velkommen til VBAs verden!" Slutt sub 

Trinn 11: Trykk på F5 eller Run-knappen og se utdataene.

Eksempel 2 - Angi celleverdi ved bruk av VBA-celler

Dette er en annen metode for å stille inn celleverdien under VBA. I motsetning til RANGE-funksjonen trenger ikke cellene dem engang. Verdioperatør for å kunne angi verdi for de spesifikke cellene.

Følg trinnene nedenfor for å angi celleverdien i Excel VBA:

Trinn 1: Sett inn en ny modul under VBE hvor du kan begynne å skrive det nye kodestykket.

Trinn 2: Legg til en ny delprosedyre under modulen satt inn, hvor du kan lagre makrokoden din i.

Kode:

 Sub VBA_Value_Ex2 () Slutt Sub 

Trinn 3: Begynn å skrive denneWorkbook.Worksheet for å få tilgang til arket som heter “Setting_Cell_Value_2”.

Kode:

 Sub VBA_Value_Ex2 () ThisWorkbook.worksheets End Sub 

Trinn 4: Nevn arknavnet under parentes i doble anførselstegn.

Kode:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2") Slutt Sub 

Trinn 5 : Bruk egenskapen .Cells for å angi celleområdet fra det gitte excelarket.

Kode:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Celler (1, 1) End Sub 

Det første argumentet for Cells-egenskapen representerer radene, og det andre argumentet representerer kolonnen. Derfor betyr celler (1, 1) celle assosiert med den første raden og den første kolonnen på arket “Setting_Cell_Value_2”.

Trinn 6: Nå, med hjelp av tildelingsoperatøren, tilordne en verdi til dette cellesettet.

Kode:

 Sub VBA_Value_Ex2 () ThisWorkbook.Worksheets ("Setting_Cell_Value_2"). Cells (1, 1) = "VBA er fleksibel." Slutt sub 

Ta en titt på at vi ikke trenger .Valueringsfunksjon som vi trenger å bruke mens du setter verdien med Range-funksjonen. Cells Method har ikke slike IntelliSense-alternativer.

Trinn 7: Trykk på F5 eller Run-knappen for å kjøre denne koden og se utdataene. Du vil se en utgang som vist på skjermdumpen nedenfor.

Eksempel 3 - Få celleverdi i VBA

Til nå har vi i to eksempler sett hvordan vi kan angi verdi for en celle eller et område med celler. Anta at en sak er nøyaktig omvendt, vi må få verdien tildelt en bestemt celle i et excelark. Hvordan kan vi få det til? La oss gå gjennom en trinnvis guide.

Anta at jeg har tildelt en verdi som vist på skjermdumpen nedenfor under den første cellen i kolonne A i arket “Getting_Cell_Value”.

Følg trinnene nedenfor for å få celleverdien i Excel VBA:

Trinn 1: Sett inn en ny modul under VBE.

Trinn 2: Legg til en delprosedyre slik at en makro kan lagres som en kode.

Kode:

 Sub VBA_Value_Ex3 () Slutt Sub 

Trinn 3: Definer en ny variabel kalt Get_Value som en variant ved å bruke VBA Dim-funksjon.

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant End Sub 

Nå må du tilordne verdien som er til stede i celle A1 til variabelen definert over.

Trinn 4: Skriv “Get_Value = ThisWorkbook.Worksheets”. Dette vil gi VBA-kompilatoren tilgang til excelarket der verdien din er lagret.

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant Get_Value = ThisWorkbook.Worksheets End Sub 

Trinn 5: Nevn navnet på regnearket under parenteser med sitater der verdien er lagret.

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value") Slutt Sub 

Trinn 6: Bruk nå punkt (.) Range-metoden for å gi den nøyaktige cellen der verdien er lagret under arket som heter “Getting_Cell_Value”.

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1") Slutt Sub 

Trinn 7: Bruk til slutt verdien (.) Verdi-metoden slik at den faktiske verdien under celle A1 kan nås av kompilatoren.

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Verdi Slutt Sub 

Trinn 8: Som vi har snakket om, må vi lagre verdien i celle A1. For det bruker du MsgBox for å vise verdien av variabelen Get_Value (Som allerede har fått tilgang til verdien som er skrevet inn i celle A1).

Kode:

 Sub VBA_Value_Ex3 () Dim Get_Value Som Variant Get_Value = ThisWorkbook.Worksheets ("Getting_Cell_Value"). Range ("A1"). Verdi MsgBox Get_Value End Sub 

Trinn 9: Trykk på F5 eller Run-knappen for å kjøre denne koden, og du får verdien til stede i celle A1 under meldingsboksen.

Se, dette var verdien vi har nevnt under celle A1 i arket “Getting_Cell_Value”. Ikke sant?

Eksempel 4 - Kan vi få flere celleverdier om gangen?

La oss anta at jeg har verdier lagret i tre forskjellige celler A1, A2, A3 som vist på skjermdumpen nedenfor:

Bare ikke bli forvirret hvis du ser teksten spredt langs kolonnene A til E. det er bare en synlig layout (fordi jeg har slått sammen cellene) og den faktiske verdien er lagret under celle A1, A2, A3.

Følg trinnene nedenfor for å bruke Excel VBA Value:

Trinn 1: Definer en variabel som en variant under en ny delprosedyre i VBA-modulen din.

 Kode: Sub VBA_Value_Ex4 () Dim Get_Value_2 Som Variant End Sub 

Trinn 2: Bruk Range.Value-metoden for å hente verdien til cellene A1: A3 og tilordne en ny variabel definert i forrige trinn.

Kode:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 Som Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Verdi Slutt Sub 

Trinn 3: Bruk endelig MsgBox-funksjonen til å vise verdiene som er lagret i celle A1: A3.

Kode:

 Sub VBA_Value_Ex4 () Dim Get_Value_2 Som Variant Get_Value_2 = ThisWorkbook.Worksheets ("Getting_Cell_Value_2"). Range ("A1: A3"). Verdi MsgBox Get_Value_2 End Sub 

Trinn 4: Trykk på F5 eller Run-knappen og se output for denne koden.

Du får en kjøretidsfeil '13 ': Skriv inn Mismatch. Årsaken bak å få denne feilen er at vi definerer en enkelt variabel og tildeler verdier av en endimensjonal matrise (med tre rader) til den. Noe som logisk ikke er mulig.

Dette er fra denne artikkelen. La oss pakke tingene opp med noen punkter som skal huskes.

Ting å huske

Du kan ikke angi verdi for flere celler mens du bruker VBA CELLS-metoden, fordi den tar rader og kolonner som argumenter. Du kan bare spesifisere radnummeret og kolonnenummeret i det.

Du kan heller ikke få verdier som er lagret i flere celler i en enkelt meldingsboks. Hvis du må hente verdiene, må du skrive separate få argumenter for hver av verdien.

Anbefalte artikler

Dette har vært en guide til VBA Value. Her har vi diskutert hvordan du bruker Excel VBA Value Function sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Komplett guide til VBA ved feil
  2. Hvordan bruke VBA-nummerformat?
  3. VBA VLOOKUP-funksjon med eksempler
  4. Opprette en VBA-funksjon i Excel
  5. Hvordan bruke VBA Val-funksjon?