Hvordan bruke VBA Range Offset (11 måter)

  • Dele Denne
Hugh West

Hvis du leter etter noen av de enkleste måtene å bruke VBA Range Offset på, vil du finne denne artikkelen verdt det. La oss komme i gang med måtene å bruke VBA Range Offset på.

Last ned arbeidsbok

VBA Range Offset.xlsm

11 måter å bruke VBA Range Offset

Jeg har følgende datatabell som inneholder noen studenters informasjon om en høyskole. Ved å bruke dette datasettet vil jeg forklare måtene å bruke VBA Range Offset på.

For dette formålet har jeg brukt Microsoft Excel 365 -versjonen, du kan bruke hvilken som helst andre versjoner i henhold til din bekvemmelighet.

Metode-1: Velge en celle ved å bruke VBA-område

Her vil vi velge en celle som inneholder navnet Daniel Defoe. For dette formålet vil vi bruke RANGE-funksjonen i VBA .

Trinn-01 :

➤Gå til Utvikler Tab>> Visual Basic Alternativ

Deretter Visual Basic Editor åpnes.

➤Gå til Sett inn Tab>> Modul Alternativ

Deretter opprettes en modul .

Trinn-02 :

➤Skriv følgende kode

6626

Det vil velge celle B8 .

➤Trykk F5

Resultat :

På denne måten vil du få valgt cellen som inneholder Daniel Defoe .

Les mer: Hvordan bruke rekkeviddeobjektet til VBA i Excel

Metode-2: Velge en gruppe sammenhengende celler ved å bruke VBA-område

Du kan velge en rekke sammenhengende celler som kolonnen Elevens navn og Resultat -kolonnen i følgende tabell ved å følge denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

6849

Den vil velge cellene fra B5 til C10 .

➤Trykk F5

Resultat :

Etter det vil du få opp cellene i Kolonne B og Kolonne C valgt.

Metode-3: Velge en gruppe av ikke-sammenhengende celler ved å bruke VBA-område

Anta, du vil velge elevene som heter William David og Michael Anthony inkludert deres respektive e-post-ID . For å velge disse ikke-kongruente cellene kan du følge denne metoden.

Trinn-01 :

➤Følg Trinn -01 av Metode-1

7071

Den vil velge cellene B6 , D6 , B9, og D9 .

➤Trykk F5

Resultat :

Deretter vil du få cellene som inneholder studentens navn William David , Michael Anthony, og deres respektive e-post-ID valgt.

Metode-4: Velge en gruppe med ikke-sammenhengende celler og et område ved å bruke VBA-område

Du kan velge et område med celler og noen ikke-sammenhengende celler samtidig ved å følge dettemetode.

Trinn-01 :

➤Følg Trinn-01 av Metode- 1

6449

Den vil velge celleområdet i området B5:B10 og de to andre cellene D6 , D10 .

➤Trykk F5

Resultat :

Etterpå får du cellene i kolonnen Elevens navn og to e-post-IDer for William David og Donald Paul valgt.

Metode-5: Velge et område ved å bruke VBA-områdeforskyvning

Du kan velge et celleområde i kolonnen Elevens navn ved å bruke OFFSET-funksjon .

Trinn-01 :

➤Følg Trinn-01 av Method-1

9214

Til å begynne med vil Range(“A1:A6”) velge området A1:A6 , og deretter Offset(4, 1) vil flytte 4 rader nedover fra celle A1 og 1 kolonne til høyre side. Deretter vil det samme antallet celler i området A1:A6 bli valgt herfra.

➤Trykk F5

Resultat :

På denne måten vil du velge kolonnen Elevens navn .

Metode-6: VBA Range Offset Negativ

Du kan velge E-post-ID-kolonnen ved å følge denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

5019

Først vil Range(“F11:F16”) velge området F11:F16 , og deretter vil Offset(-6, -2) flytte 6 rader oppover fra celle F11 og 2 kolonner til venstre side. Etter det vil det samme antallet celler i området F11:F16 bli valgt herfra.

➤Trykk F5

Resultat :

Etter det vil du kunne velge kolonnen E-post-ID .

Lignende avlesninger:

  • VBA for hver celle i området i Excel (3 metoder)
  • Hvordan telle tekst i Excel (7 enkle triks)

Metode-7: Velge et område med hensyn til den aktive cellen

Her, vi har en aktiv celle (celle A1 ), og med hensyn til denne cellen vil vi velge dataområdet i denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

5479

Her, activecell er A1

Den første delen activecell.Offset(4, 1) vil velge en celle 4 rader nedover og 1 kolonne rett fra cellen A1 og den andre delen activecell.Offset(9, 3) velger en celle 9 rader nedover og 3 kolonner rett fra celle A1 .

Til slutt, alle av cellene mellom disse to celler vil bli valgt.

➤Trykk F5

Resultat :

Deretter , vil du kunne velge hele dataområdet.

Metode-8: Kopier et område

Hvis du vil kopiere et celleområde, så kan du følge denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

1454

Til å begynne med Range(“A1:A6”) vil velge området A1:A6 , og deretter vil Offset(4, 1) flytte 4 rader nedover fra celle A1 og 1 kolonne til høyre side. Etter det vil det samme antallet celler i området A1:A6 bli valgt herfra.

Til slutt vil den kopiere verdiene i området B5:B10 .

➤Trykk F5

Resultat :

Deretter kan du vil kunne kopiere dataområdet i Student Name-kolonnen .

Metode-9: Deleting a Range

Her, vi vil vise måten å slette en rekke data ved å bruke VBA kode.

Trinn-01 :

➤Følg Trinn-01 av Method-1

4660

For det første vil Range(“F11:F17”) velge område F11:F17 , og deretter Offset(-7, -2) vil flytte 7 rader oppover fra celle F11 og 2 kolonner til venstre side. Etter det vil det samme antallet celler i området F11:F17 bli valgt herfra.

Til slutt vil det slette området D4:D10 .

➤Trykk F5

Resultat :

På denne måten vil du kopiere dataområdet i E-post-ID-kolonnen .

Metode-10: Bruk av VBA-områdeforskyvning for å angi en verdi

Her, vi har en tom celle (vi har fjernet verdien i denne cellen for å forklare denne metoden) i Student Name-kolonnen og vi ønsker å fylle den med navnet Joseph Michael . Ved å bruke en VBA kode vi kan enkelt angi denne verdien.

Trinn-01 :

➤Følg Trinn-01 av Method-1

4464

For det første vil Range(“A1”) velge cellen A1 , og deretter Offset(6, 1) flytter 6 rader nedover fra celle A1 og 1 kolonne til høyre side. Etter det vil celle B7 bli valgt, og til slutt vil den angi verdien “Joseph Michael” i denne cellen.

➤Trykk F5

Resultat :

På denne måten får du navnet Joseph Michael i celle B7 .

Metode-11: Bruk av VBA-områdeforskyvning for å få utdata

Anta at du vil skrive Bestått eller Kunnet ikke korrespondere til elevenes navn, avhengig av Resultatkolonnen der Bestått eller Ikke bestått er skrevet i parentes. For å finne denne understrengen i Resultatkolonnen og skriv den ned i kolonnen Bestått/Ikke bestått følg denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

5195

Her, celleområdet C5:C10 er valgt av Range(“C5:C10”) som er Resultatkolonnen

InStr(cell. verdi, "Pass") > 0 er tilstanden der tallet er større enn null (når cellen inneholder "Pass" ) , vil følgende linje fortsette og gi utdata i den tilstøtende cellen som Bestått . Her vil den tilstøtende cellen bli valgt av celle.Offset(0, 1) , som betyr at den vil flytte 1 kolonne til høyre fra inngangscellen.

Hvis betingelsen blir usann, betyr det at en celle ikke inneholder noen "Bestått" så vil linjen under Annet kjøres og gi utdataverdien i den tilstøtende cellen som Failed .

Denne sløyfen vil fortsette for hver celle .

➤Trykk F5

Resultat :

Deretter får du utgangene Bestått eller Ikke bestått i Bestått/Ikke bestått kolonnen.

Øvingsseksjonen

For å øve av deg selv har vi gitt en Practice -seksjon som nedenfor i et ark kalt Practice . Gjør det selv.

Konklusjon

I denne artikkelen prøvde jeg å dekke de enkleste måtene å bruke VBA -områdeforskyvning på i Excel effektivt. Håper du finner det nyttig. Hvis du har forslag eller spørsmål, del dem gjerne med oss.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.