VBA kiekvienam "Excel" diapazono langeliui (3 metodai)

  • Pasidalinti
Hugh West

Didelėse duomenų bazėse didžiąją laiko dalį praleidžiate dirbdami su diapazonais ir ląstelėmis. Kartais tenka kartoti tą patį veiksmą dideliuose diapazonuose arba dideliame skaičiuje langelių. Tai kartu atima jūsų laiką ir mažina efektyvumą. Protingas šios problemos sprendimas - sukurti VBA programavimo kodas kuris bus paleistas per kiekvieną diapazono ląstelę ir atliks tą patį jūsų nurodytą veiksmą. Šiandien šiame straipsnyje aptarsime, kaip "Excel" programoje atlikti VBA kiekvienam diapazono langeliui.

Atsisiųsti praktikos sąsiuvinį

Atsisiųskite šią pratybų knygą, kad skaitydami šį straipsnį galėtumėte atlikti užduotį.

VBA kodas kiekvienai "Excel.xlsx" diapazono ląstelei

3 tinkami būdai taikyti VBA kiekvienam "Excel" diapazono langeliui

Naudodami VBA kodą galite atlikti tą pačią formulę kiekvienai diapazono ląstelei, stulpeliui ar eilutei. Šiame skyriuje apžvelgsime visus skyrius.

1. Taikykite VBA kiekvienai diapazono ląstelei

Apsvarstykite situaciją, kai kiekvienai tam tikro intervalo ląstelei reikia taikyti tą patį VBA kodą ( B3:F12 ). Norėdami tai padaryti, sukursime VBA kodą. Instrukcijos pateikiamos toliau

1 žingsnis:

  • Pirmiausia įterpsime komandos mygtuką, kad supaprastintume savo darbą. Eikite į savo Kūrėjo skirtukas , pasirinkite Įdėkite ir spustelėkite komandos mygtuką, kad jį gautumėte.

  • Turime komandos mygtuką.

  • Dešiniuoju pelės klavišu spustelėkite komandų mygtuką, kad atsidarytų parinktys. Pasirinkite ir spustelėkite Savybės pakeisti kai kurias parinktis.

  • Pakeiskite komandos mygtuko antraštę. Čia pavadinimą pakeisime į " Spauskite čia ".

2 žingsnis:

  • Dabar dukart spustelėkite komandos mygtuką, kad atidarytumėte VBA Modulis . Čia užrašysime užduočiai skirtą VBA kodą.

  • Pirmiausia deklaruosime du kintamuosius. Pavadinsime diapazono objektus CL ir Rng . Galite juos pavadinti kaip tik norite.
 Dim CL kaip diapazonas Dim Rng kaip diapazonas 

  • Šia komanda priskirkite konkretų diapazoną,

Set Rng = Worksheets("VBA1").Range("B3:F12")

  • Čia VBA1 yra mūsų darbalapio pavadinimas ir B3:F12 yra mūsų apibrėžtas diapazonas.

  • Dabar naudosime kodą, kad atliktume veiksmus kiekvienoje diapazono ląstelėje. Kodas yra toks,
 Kiekvienam CL in Rng CL.Value = 100 Kitas CL 
  • Vertė = 100 nurodo, kad jis grąžins 100 kiekvienam langeliui nurodytame intervale.

  • Taigi mūsų galutinis kodas tampa,
 Private Sub CommandButton1_Click () Dim CL As Range Dim Rng As Range Set Rng = Worksheets("VBA1").Range("B3:F12") For Each CL In Rng CL.Value = 100 Next CL End Sub 
  • Eikite į pagrindinį darbalapį ir spustelėkite komandų mygtuką, kad kiekvienoje diapazono ląstelėje paleistumėte VBA.

3 veiksmas:

  • Kaip ir skaitines reikšmes, taip ir tekstines reikšmes galime įrašyti į kiekvieną diapazono ląstelę. Tokiu atveju eikite į VBA langą ir vietoj 100 įrašykite norimą teksto reikšmę. Pakeista eilutė yra
 CL.Value = "ExcelWIKI" 

  • Spustelėkite komandos mygtuką ir VBA kodas grąžins šią teksto vertę kiekvienai diapazono ląstelei.

4 veiksmas:

  • Šiame žingsnyje šiek tiek įsigilinsime. Tarkime, kad norime paryškinti kiekvieną tuščią ląstelę savo diapazone.

  • Tam į esamą kodą įtraukite naują sąlygą. Naujoji formulė yra tokia,
 Jei CL.Value = " " Tada CL.Interior.ColorIndex = 3 Pabaiga Jei 
  • Šis naujas kodas raudona spalva paryškins tuščią ląstelę. Taigi visas kodas yra,
 Private Sub CommandButton1_Click () Dim CL As Range Dim Rng As Range Set Rng = Worksheets("VBA1").Range("B3:F12") For Each CL In Rng If CL.Value = " " Then CL.Interior.ColorIndex = 3 End If Next CL End Sub 

  • Gaukite rezultatą spustelėję komandos mygtuką.

Panašūs skaitiniai:

  • Kaip "Excel" programoje naudoti VBA objektą "Range Object" (5 savybės)
  • Naudokite VBA diapazono poslinkį (11 būdų)
  • Kaip skaičiuoti tekstą programoje "Excel" (7 lengvi triukai)

2. Įterpkite VBA kodą kiekvienam diapazono stulpelio langeliui

VBA kodą galime paleisti ir kiekvienam stulpelio langeliui. Tarkime, turime stulpelį, kuriame yra skaičių, ir turime nuspalvinti reikšmes, kurios yra mažesnės nei 10. Sukursime VBA kodą, kad paleistume kiekvieną stulpelio langelį.

1 žingsnis:

  • Sukurkite komandinį mygtuką pagal aptartas instrukcijas.

2 žingsnis:

  • Dukart spustelėkite komandos mygtuką, kad atsidarytų VBA langas.
  • Deklaruosime kintamąjį, pavadintą " c " tipo long. Čia naudojame Long tipo kintamąjį, nes Long kintamieji yra talpesni už Integer kintamuosius.
 Dim c As Long 

  • Tada pridėkite kodo eilutę, kuri pakeičia visų stulpelio langelių šrifto spalvą į juodą.
 Columns(1).Font.Color = vbBlack 

  • Įterpkite šio kodo kilpą.
 For c = 1 To Rows.Count Next c 

  • Šiame žingsnyje įvesime sąlygą, kad nuspalvintume reikšmes, kurios yra mažesnės už ląstelės C4 reikšmę (10). Įveskite šį kodą.
 If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If 

  • Taigi galutinis kodas yra toks,
 Private Sub CommandButton1_Click () Dim c As Long Columns(1).Font.Color = vbBlack For c = 1 To Rows.Count If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If Next c End Sub 
  • VBA bus paleista ir parodys rezultatus, kai spustelėsite komandos mygtuką.

3. Parašykite VBA kodą kiekvienai eilutės eilutei

VBA kodą galime paleisti ir kiekvienai eilutės ląstelei. Pateiktoje eilutėje turime atlikti tą patį veiksmą kiekvienoje eilutės ląstelėje.

1 žingsnis:

  • Pridėkite komandos mygtuką ir pakeiskite jo pavadinimą į " Spauskite čia! "

  • Dukart spustelėkite mygtuką, kad atsidarytų VBA langas. Įrašykite toliau pateiktą VBA kodą.
 Private Sub CommandButton1_Click () Dim r As Range Dim MyString As String 'Kiekvienai eilutės ląstelei ir taikykite geltonos spalvos užpildą For Each r In Range("B3:F3").Rows r.Interior.ColorIndex = 6 Next End Sub 
  • Kodas bus paleistas per kiekvieną eilutės langelį ir kiekvienam langeliui bus pritaikytas geltonos spalvos užpildas.

  • Paspauskite mygtuką ir mūsų rezultatai bus čia.

Trumpos pastabos

👉 Jei kūrėjo skirtukas nėra matomas, galite jį aktyvuoti naudodamiesi šia instrukcija.

Pritaikyta greitosios prieigos įrankių juosta → Daugiau komandų → Pritaikyti juostą → Kūrėjas → Gerai

Išvada

Apžvelgėme tris skirtingus būdus, kaip paleisti VBA kiekvienai diapazono ląstelei. Kviečiame komentuoti, jei turite kokių nors klausimų ar užklausų. Taip pat galite peržiūrėti kitus mūsų straipsnius, susijusius su "Excel" užduotimis!

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ą.