VBA az Excel tartomány egyes celláihoz (3 módszer)

  • Ossza Meg Ezt
Hugh West

A nagy adatbázisokban a legtöbb időt a tartományok és cellák kezelésével töltöd. Néha ugyanazt a műveletet kell megismételned nagy tartományokban vagy nagy számú cellában. Ez egyidejűleg megöli az idődet és csökkenti a hatékonyságodat. Az okos megoldás erre a problémára az, hogy építs egy VBA programozási kód amely végigfut a tartomány minden egyes celláján, és ugyanazt a műveletet hajtja végre, amelyet Ön irányít. Ma ebben a cikkben megvitatjuk, hogyan kell VBA-t végezni az Excel tartomány minden cellájához.

Gyakorlati munkafüzet letöltése

Töltse le ezt a gyakorlókönyvet, hogy gyakorolja a feladatot, miközben ezt a cikket olvassa.

VBA-kód az Excel.xlsx tartomány minden egyes cellájához

3 megfelelő módja a VBA alkalmazásának az Excel tartomány minden egyes cellájához

Egy VBA kód segítségével ugyanazt a képletet egy tartomány, oszlop vagy sor minden egyes cellájára elvégezhetjük. Ebben a részben végigmegyünk az összes szakaszon.

1. Alkalmazza a VBA-t a tartomány minden egyes cellájára

Vegyünk egy olyan helyzetet, amikor ugyanazt a VBA-kódot kell alkalmaznunk egy adott tartomány minden cellájára ( B3:F12 ). Ehhez egy VBA kódot fogunk készíteni. Az alábbi utasításokat az alábbiakban találja.

1. lépés:

  • Először is, beillesztünk egy parancsgombot, hogy egyszerűsítsük a munkánkat. Menjünk be a Fejlesztő lap , válasszon Beillesztés , és kattintson a parancsgombra, hogy kapjon egyet.

  • Megvan a parancsgombunk.

  • Kattintson a jobb gombbal a parancsgombra a beállítások megnyitásához. Válassza ki és kattintson a Tulajdonságok hogy módosítson néhány opciót.

  • Változtassuk meg a parancsgomb feliratát. Itt a nevet megváltoztatjuk, " Kattintson ide ".

2. lépés:

  • Most kattintson duplán a parancsgombra a VBA megnyitásához. Modul Itt fogjuk leírni a feladathoz szükséges VBA kódot.

  • Először is, deklarálunk két változót. A tartomány objektumokat úgy hívjuk, hogy CL és Rng Úgy nevezheted el őket, ahogy akarod.
 Dim CL As Range Dim Rng As Range 

  • Ezzel a paranccsal konkrét tartományt rendelhet hozzá,

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

  • Itt a VBA1 a munkalap neve és a B3:F12 a mi meghatározott tartományunk.

  • Most a kód segítségével végigmegyünk a tartomány minden egyes celláján. A kód a következő,
 For Each CL In Rng CL.Value = 100 Next CL 
  • Érték = 100 utal arra, hogy visszatér 100 az adott tartomány minden egyes cellájára.

  • Így a végső kódunk a következő lesz,
 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 
  • Menjen a fő munkalapra, és kattintson a parancs gombra a VBA futtatásához a tartomány minden egyes cellájára.

3. lépés:

  • A numerikus értékekhez hasonlóan szöveges értékeket is megadhatunk a tartomány egyes celláihoz. Ebben az esetben menjünk a VBA ablakba, és a 100 helyett illesszük be a kívánt szöveges értéket. A megváltozott sor a következő lesz
 CL.Value = "ExcelWIKI" 

  • Kattintson a parancsgombra, és a VBA-kód a tartomány minden egyes cellájára visszaadja ezt a szövegértéket.

4. lépés:

  • Ebben a lépésben egy kicsit mélyebbre ásunk. Tegyük fel, hogy a tartományunk minden üres celláját ki akarjuk emelni.

  • Ehhez adjunk hozzá egy új feltételt a meglévő kódhoz. Az új képlet a következő,
 If CL.Value = " " Then CL.Interior.ColorIndex = 3 End If 
  • Ez az új kód piros színnel fogja kiemelni az üres cellát. A teljes kód tehát a következő,
 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 

  • Az eredményt a parancs gombra kattintva kapja meg.

Hasonló olvasmányok:

  • A VBA tartományobjektum használata az Excelben (5 tulajdonság)
  • VBA tartományeltolás használata (11 mód)
  • Hogyan számolhat szöveget az Excelben (7 egyszerű trükk)

2. VBA-kód beillesztése egy tartomány oszlopának minden cellájához

VBA kódot futtathatunk egy oszlop minden egyes cellájára is. Tegyük fel, hogy van egy számokat tartalmazó oszlopunk, és ki kell színeznünk a 10-nél kisebb értékeket. Létrehozunk egy VBA kódot az oszlop minden egyes cellájának futtatásához.

1. lépés:

  • Hozzon létre egy parancsgombot az általunk tárgyalt utasításokat követve.

2. lépés:

  • Kattintson duplán a parancsgombra a VBA ablak megnyitásához.
  • Deklarálunk egy változót, melynek neve " c " típusú Long változót használunk, mivel a Long változók kapacitása nagyobb, mint az Integer változóké.
 Dim c As Long 

  • Ezután adjuk hozzá azt a kódsort, amely az oszlopunk összes cellájának betűszínét feketére változtatja.
 Columns(1).Font.Color = vbBlack 

  • Illessze be a kódhoz tartozó hurkot.
 For c = 1 To Rows.Count Következő c 

  • Ebben a lépésben egy olyan feltételt adunk meg, amely kiszínezi azokat az értékeket, amelyek alacsonyabbak a C4 cella értékénél (10). Ehhez írjuk be ezt a kódot.
 If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If 

  • A végső kód tehát a következő,
 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 
  • A VBA lefut és eredményeket mutat, amikor a parancsgombra kattint.

3. VBA-kód írása egy tartomány sorának minden cellájához

Egy sor minden egyes cellájára is futtathatunk egy VBA kódot. Az adott sorban a sor minden celláján ugyanazt a műveletet kell végrehajtanunk.

1. lépés:

  • Adjunk hozzá egy parancsgombot, és változtassuk meg a nevét " Kattintson ide! "

  • Kattintson duplán a gombra a VBA ablak megnyitásához. Írja le az alábbi VBA kódot.
 Private Sub CommandButton1_Click () Dim r As Range Dim MyString As String 'Minden egyes cellára egy sorban, és alkalmazzunk sárga színű kitöltést For Each r In Range("B3:F3").Rows r.Interior.ColorIndex = 6 Next End Sub 
  • A kód végigfut a sor minden egyes celláján, és sárga színű kitöltést alkalmaz minden egyes cellára.

  • Kattintson a gombra, és máris itt az eredmény.

Gyors megjegyzések

👉 Ha nem látható a fejlesztői lapod, akkor ezzel az utasítással aktiválhatod.

Testreszabott gyorselérési eszköztár → További parancsok → Szalag testreszabása → Fejlesztő → OK

Következtetés

Végigvettünk három különböző megközelítést a VBA futtatására egy tartomány minden egyes cellájára. Szívesen látjuk, ha bármilyen kérdése vagy kérdése van. Nézze meg más, az Excel feladatokkal kapcsolatos cikkeinket is!

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.