Kaip naudoti VBA diapazono poslinkį (11 būdų)

  • Pasidalinti
Hugh West

Jei ieškote paprasčiausių būdų, kaip naudoti VBA Range Offset, tuomet šis straipsnis bus vertas dėmesio. Pradėkime nuo to, kaip naudoti VBA Diapazono poslinkis.

Atsisiųsti darbo knygą

VBA diapazono poslinkis.xlsm

11 būdų, kaip naudoti VBA diapazono poslinkį

Turiu šią duomenų lentelę, kurioje pateikta informacija apie kai kuriuos kolegijos studentus. Naudodamasis šiuo duomenų rinkiniu paaiškinsiu, kaip naudoti VBA Diapazono poslinkis.

Šiam tikslui naudojau "Microsoft Excel 365 versiją, galite naudoti bet kokias kitas versijas pagal savo poreikius.

1 būdas: ląstelės pasirinkimas naudojant VBA diapazoną

Čia pasirinksime ląstelę su pavadinimu Daniel Defoe. Šiam tikslui naudosime RANGE funkcija svetainėje VBA .

Žingsnis-01 :

➤Pereiti į Kūrėjas Skirtukas>> "Visual Basic Galimybė

Tada "Visual Basic" redaktorius atsivers.

➤Pereiti į Įdėkite Skirtukas>> Modulis Galimybė

Po to Modulis bus sukurta.

Žingsnis-02 :

➤Įrašykite šį kodą

 Sub SelectCell() Range("B8").Select End Sub 

Bus pasirinkta ląstelė B8 .

➤Press F5

Rezultatas :

Tokiu būdu gausite ląstelę, kurioje yra Danielis Defoe pasirinktas.

Skaityti daugiau: Kaip "Excel" programoje naudoti VBA objektą "Range Object

2 būdas: gretimų ląstelių grupės pasirinkimas naudojant VBA diapazoną

Galite pasirinkti gretimų ląstelių intervalą, pvz. Mokinio vardas ir pavardė stulpelyje ir Rezultatas Toliau pateiktos lentelės stulpelį, vadovaudamiesi šiuo metodu.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub ContiguousCells() Range("B5:C10").Select End Sub 

Bus pasirinktos ląstelės iš B5 į C10 .

➤Spauda F5

Rezultatas :

Po to gausite ląsteles, esančias B stulpelis ir C stulpelis pasirinktas.

3 metodas: nesiribojančių ląstelių grupės pasirinkimas naudojant VBA diapazoną

Tarkime, norite pasirinkti mokinius, pavadintus Viljamas Deividas ir Maiklas Antonijus įskaitant jų atitinkamus El. pašto kodas . Norėdami pasirinkti šias nesuderintas ląsteles, galite vadovautis šiuo metodu.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub nonContiguous() Range("B6,D6,B9,D9").Select End Sub 

Bus pasirinktos ląstelės B6 , D6 , B9, ir D9 .

➤Press F5

Rezultatas :

Tada gausite langelius su mokinio vardu ir pavarde. Viljamas Deividas , Michaelas Anthony, ir atitinkami jų El. pašto kodas pasirinktas.

4 metodas: nesiribojančių ląstelių grupės ir diapazono pasirinkimas naudojant VBA diapazoną

Taikydami šį metodą galite vienu metu pasirinkti ląstelių intervalą ir kai kurias nesusijusias ląsteles.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub nonContiguouswithrange() Range("B5:B10,D6,D10").Select End Sub 

Bus pasirinktas diapazono ląstelių diapazonas B5:B10 o kitos dvi ląstelės D6 , D10 .

➤Spauda F5

Rezultatas :

Vėliau gausite stulpelio langelius Mokinio vardas ir pavardė ir du El. pašto kodai svetainėje Viljamas Deividas ir Donaldas Paulas pasirinktas.

5 metodas: diapazono pasirinkimas naudojant VBA diapazono poslinkį

Galite pasirinkti ląstelių intervalą Mokinio vardo stulpelis naudodami OFFSET funkcija .

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub selectrangeoffset() Range("A1:A6").Offset(4, 1).Select End Sub 

Iš pradžių, Diapazonas ("A1:A6") bus pasirinktas diapazonas A1:A6 , o tada poslinkis(4, 1) bus perkelta 4 eilutėmis žemyn nuo ląstelės A1 ir 1 stulpelis į dešinę pusę. Po to, vienodas ląstelių skaičius diapazone A1:A6 bus pasirinktas iš čia.

➤Spauda F5

Rezultatas :

Tokiu būdu pasirinksite stulpelį Mokinio vardas ir pavardė .

6 metodas: VBA diapazono poslinkis į neigiamą pusę

Galite pasirinkti El. pašto ID stulpelis vadovaudamiesi šiuo metodu.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Dalis neigiama intervalo poslinkis() Range("F11:F16").Offset(-6, -2).Select End Sub 

Iš pradžių, Diapazonas ("F11:F16") bus pasirinktas diapazonas F11:F16 , o tada poslinkis(-6, -2) bus perkelta 6 eilutėmis aukštyn nuo ląstelės F11 ir 2 stulpelius į kairę pusę. Po to vienodas ląstelių skaičius diapazone F11:F16 bus pasirinktas iš čia.

➤Spauda F5

Rezultatas :

Po to galėsite pasirinkti stulpelį El. pašto kodas .

Panašūs skaitiniai:

  • VBA kiekvienam "Excel" diapazono langeliui (3 metodai)
  • Kaip skaičiuoti tekstą programoje "Excel" (7 lengvi triukai)

7 metodas: diapazono pasirinkimas aktyviosios ląstelės atžvilgiu

Čia turime aktyvią ląstelę (ląstelė A1 ) ir šio langelio atžvilgiu pasirinksime duomenų intervalą šiuo metodu.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub actvcell() Range(activecell.Offset(4, 1), activecell.Offset(9, 3)).Select End Sub 

Čia, activecell yra . A1

Pirmoji dalis activecell.Offset(4, 1) bus pasirinkta ląstelė 4 eilutėmis žemyn ir 1 stulpeliu į dešinę nuo ląstelės A1 ir antroji dalis activecell.Offset(9, 3) bus pasirinkta ląstelė 9 eilutėmis žemyn ir 3 stulpeliais į dešinę nuo ląstelės A1 .

Galiausiai bus atrinkti visi langeliai tarp šių dviejų langelių.

➤Press F5

Rezultatas :

Tada galėsite pasirinkti visą duomenų intervalą.

8 metodas: nukopijuoti diapazoną

Jei norite nukopijuoti ląstelių intervalą, galite naudoti šį metodą.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub copyrangeoffset() Range("A1:A6").Offset(4, 1).Copy End Sub 

Iš pradžių, Diapazonas ("A1:A6") bus pasirinktas diapazonas A1:A6 , o tada poslinkis(4, 1) bus perkelta 4 eilutėmis žemyn nuo ląstelės A1 ir 1 stulpelis į dešinę pusę. Po to, vienodas ląstelių skaičius diapazone A1:A6 bus pasirinktas iš čia.

Galiausiai bus nukopijuotos reikšmės, esančios intervale B5:B10 .

➤Press F5

Rezultatas :

Po to galėsite nukopijuoti duomenų diapazoną į Mokinio vardo stulpelis .

9 metodas: diapazono ištrynimas

Čia parodysime, kaip ištrinti duomenų intervalą naudojant VBA kodas.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub dltrangeoffset() Range("F11:F17").Offset(-7, -2).Delete End Sub 

Pirma, Diapazonas ("F11:F17") bus pasirinktas diapazonas F11:F17 , o tada poslinkis(-7, -2) bus perkelta 7 eilutėmis aukštyn nuo ląstelės F11 ir 2 stulpelius į kairę pusę. Po to vienodas ląstelių skaičius diapazone F11:F17 bus pasirinktas iš čia.

Galiausiai bus ištrintas diapazonas D4:D10 .

➤Spauda F5

Rezultatas :

Taip nukopijuosite duomenų diapazoną, esantį El. pašto ID stulpelis .

10 metodas: VBA diapazono poslinkio naudojimas vertei įvesti

Čia turime tuščią langelį (paaiškindami šį metodą pašalinome šio langelio reikšmę). Mokinio vardo stulpelis ir norime jį užpildyti pavadinimu Džozefas Maiklas . Naudodami VBA kodą galime lengvai įvesti šią vertę.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub valuerangeoffset() Range("A1").Offset(6, 1).Value = "Joseph Michael" End Sub 

Pirma, Diapazonas ("A1") bus pasirinkta ląstelė A1 , o tada poslinkis(6, 1) bus perkelta 6 eilutėmis žemyn nuo ląstelės A1 ir 1 stulpelį į dešinę pusę. Po to ląstelė B7 bus pasirinkta ir galiausiai bus įvesta reikšmė "Joseph Michael" šioje ląstelėje.

➤Spauda F5

Rezultatas :

Tokiu būdu gausite pavadinimą Džozefas Maiklas ląstelėje B7 .

11 metodas: VBA diapazono poslinkio naudojimas išėjimui gauti

Tarkime, norite parašyti Priimta arba Nepavyko susirašyti prie mokinių vardų, priklausomai nuo Rezultatų stulpelis kur Perduoti arba Nepavyksta buvo įrašytas skliausteliuose. Norėdami rasti šią eilutės dalį Rezultatų stulpelis ir įrašykite jį į Įskaityta / neįskaityta skiltis vadovaukitės šiuo metodu.

Žingsnis-01 :

➤Sekti Žingsnis-01 1 metodas

 Sub CheckSubstring() Dim cell As Range For Each cell In Range("C5:C10") If InStr(cell.value, "Pass")> 0 Then cell.Offset(0, 1).value = "Passed" Else cell.Offset(0, 1).value = "Failed" End If Next cell End Sub 

Čia ląstelių diapazonas C5:C10 pasirenkama pagal Diapazonas ("C5:C10") kuris yra Rezultatų stulpelis

InStr(ląstelės reikšmė, "Pass")> 0 yra sąlyga, kai skaičius yra didesnis už nulį (kai ląstelėje yra "Pass" ), tada toliau bus tęsiama kita eilutė ir gretimoje ląstelėje bus pateikiamas toks išvesties rezultatas Priimta . Šiuo atveju gretimas langelis bus pasirinktas pagal cell.Offset(0, 1) , t. y. jis bus perkeltas 1 stulpeliu į dešinę nuo įvesties ląstelės.

Jei sąlyga tampa klaidinga, reiškia, kad ląstelėje nėra jokių "Pass" tada eilutė po Kitaip bus įvykdyta ir gretimoje ląstelėje bus pateikta išvesties reikšmė kaip Nepavyko .

Šis ciklas bus tęsiamas kiekvienoje ląstelėje.

➤Spauda F5

Rezultatas :

Tada gausite šiuos rezultatus Išlaikytas arba neišlaikytas į Įskaityta / neįskaityta skiltis.

Praktikos skyrius

Norėdami patys atlikti praktiką, pateikėme Praktika skirsnį, kaip nurodyta toliau, lape, pavadintame Praktika . Prašome tai padaryti patiems.

Išvada

Šiame straipsnyje bandžiau aprašyti paprasčiausius būdus, kaip naudoti VBA diapazono įskaitymą "Excel" programoje veiksmingai. Tikiuosi, kad jums tai bus naudinga. Jei turite pasiūlymų ar klausimų, nedvejodami pasidalykite jais su mumis.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.