İçindekiler
Büyük veritabanlarında, zamanınızın çoğunu aralıklar ve hücrelerle uğraşarak geçirirsiniz. Bazen aynı işlemi büyük aralıklarda veya çok sayıda hücrede tekrarlamanız gerekir. Bu aynı zamanda zamanınızı öldürür ve verimliliğinizi azaltır. Bu sorunun akıllıca çözümü, bir VBA Programlama Kodu Bu, aralıktaki her hücre boyunca çalışacak ve sizin yönlendirdiğiniz aynı eylemi gerçekleştirecektir. Bugün bu makalede, Excel'de Aralıktaki Her Hücre için VBA'nın nasıl yapılacağını tartışacağız.
Alıştırma Çalışma Kitabını İndirin
Bu makaleyi okurken alıştırma yapmak için bu alıştırma kitabını indirin.
Excel.xlsx'te Bir Aralıktaki Her Hücre için VBA KoduExcel'de Aralıktaki Her Hücre için VBA Uygulamanın 3 Uygun Yolu
Bir VBA kodu kullanarak, bir aralıktaki veya bir sütundaki veya bir satırdaki her hücreye aynı formülü uygulayabilirsiniz. Bu bölümde, tüm bölümleri gözden geçireceğiz.
1. Aralıktaki Her Hücre için VBA Uygulayın
Belirli bir aralıktaki her hücre için aynı VBA kodunu uygulamanız gereken bir durumu düşünün ( B3:F12 Bunu yapmak için bir VBA kodu oluşturacağız. Talimatlar aşağıda verilmiştir
Adım 1:
- İlk olarak, işimizi kolaylaştırmak için bir komut düğmesi ekleyeceğiz. Geliştirici Sekmesi , seçiniz Ekleme ve bir tane almak için komut düğmesine tıklayın.
- Komut düğmemiz var.
- Seçenekleri açmak için komut düğmesine sağ tıklayın. Özellikler bazı seçenekleri değiştirmek için.
- Komut düğmesinin başlığını değiştirin. Burada adı " Buraya Tıklayın ".
Adım 2:
- Şimdi VBA'yı açmak için komut düğmesine çift tıklayın Modül Burada görev için VBA kodumuzu yazacağız.
- İlk olarak, iki değişken tanımlayacağız. CL ve Rng Onlara istediğiniz ismi verebilirsiniz.
Dim CL As Aralık Dim Rng As Aralık
- Bu komutla belirli bir aralık atayın,
Set Rng = Çalışma Sayfaları("VBA1").Aralık("B3:F12")
- Burada VBA1 çalışma sayfamızın adıdır ve B3:F12 bizim tanımladığımız aralıktır.
- Şimdi aralıktaki her hücre üzerinden işlem yapmak için kodu kullanacağız. Kod şu şekildedir,
Rng İçindeki Her CL İçin CL.Value = 100 Sonraki CL
- Değer = 100 geri döneceğini ifade eder 100 verilen aralıktaki her hücre için.
- Böylece son kodumuz şöyle olur,
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
- Ana çalışma sayfanıza gidin ve aralıktaki her hücre için VBA'yı çalıştırmak üzere komut düğmesine tıklayın.
Adım 3:
- Sayısal değerler gibi, aralıktaki her hücre için metin değerleri de koyabiliriz. Bu durumda, VBA penceresine gidin ve 100 yerine, üzerinden geçmek istediğiniz metin değerini girin. Değiştirilen satır şöyledir
CL.Value = "ExcelWIKI"
- Komut düğmesine tıkladığınızda, VBA kodu aralıktaki her hücre için bu metin değerini döndürecektir.
Adım 4:
- Bu adımda biraz daha derine ineceğiz. Diyelim ki aralığımızdaki her boş hücreyi vurgulamak istiyoruz.
- Bunun için mevcut kodunuza yeni bir koşul ekleyin. Yeni formül şöyledir,
If CL.Value = " " Then CL.Interior.ColorIndex = 3 End If
- Bu yeni kod boş hücreyi kırmızı renkle vurgulayacaktır. Yani kodun tamamı şöyledir,
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
- Komut düğmesine tıklayarak sonucu alın.
Benzer Okumalar:
- Excel'de VBA'nın Aralık Nesnesi Nasıl Kullanılır (5 Özellik)
- VBA Aralık Ofsetini Kullanma (11 Yol)
- Excel'de Metin Nasıl Sayılır (7 Kolay Püf Noktası)
2. Bir Aralığın Sütunundaki Her Hücre İçin VBA Kodu Ekleme
Bir sütundaki her hücre için de VBA kodu çalıştırabiliriz. Diyelim ki sayılar içeren bir sütunumuz var ve 10'dan küçük değerleri renklendirmemiz gerekiyor. Sütundaki her hücreyi çalıştırmak için bir VBA kodu oluşturacağız.
Adım 1:
- Tartıştığımız talimatları izleyerek bir komut düğmesi oluşturun.
Adım 2:
- VBA penceresini açmak için komut düğmesine çift tıklayın.
- " adında bir değişken bildireceğiz. c "Long değişkenleri Integer değişkenlerinden daha büyük bir kapasiteye sahip olduğu için burada Long tipinde bir değişken kullanıyoruz.
Dim c Uzun Olarak
- Ardından, sütunumuzdaki tüm hücrelerin yazı tipi rengini siyah olarak değiştiren kod satırını ekleyin.
Columns(1).Font.Color = vbBlack
- Bu kod için döngüyü yerleştirin.
For c = 1 ila Satır.Sayısı Sonraki c
- Bu adımda, C4 hücresinin değerinden (10) düşük olan değerleri renklendirmek için bir koşul gireceğiz. Bunu yapmak için şu kodu girin.
If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If
- Yani son kod şu,
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
- Komut düğmesine tıkladığınızda VBA çalışacak ve sonuçları gösterecektir.
3. Bir Aralığın Satırındaki Her Hücre İçin Bir VBA Kodu Yazın
Bir satırdaki her hücre için de bir VBA kodu çalıştırabiliriz. Verilen satırda, satırın her hücresinde aynı işlemi gerçekleştirmemiz gerekir.
Adım 1:
- Bir komut düğmesi ekleyin ve adını " Buraya Tıklayın! "
- VBA penceresini açmak için düğmeye çift tıklayın. Aşağıda verilen VBA kodunu yazın.
Private Sub CommandButton1_Click () Dim r As Range Dim MyString As String 'Bir satırdaki her hücre için sarı renk dolgusu uygulayın For Each r In Range("B3:F3").Rows r.Interior.ColorIndex = 6 Next End Sub
- Kod, satırın her hücresinde çalışacak ve her hücreye sarı renkte bir dolgu uygulayacaktır.
- Düğmeye tıklayın ve sonucumuz burada.
Hızlı Notlar
👉 Geliştirici sekmeniz görünür değilse, bu talimatı kullanarak etkinleştirebilirsiniz.
Özelleştirilmiş Hızlı Erişim Araç Çubuğu → Diğer Komutlar → Şeridi Özelleştir → Geliştirici → Tamam
Sonuç
Bir aralıktaki her hücre için VBA çalıştırmak için üç farklı yaklaşımdan geçtik. Herhangi bir sorunuz veya sorunuz varsa yorum yapabilirsiniz. Excel görevleriyle ilgili diğer makalelerimize de göz atabilirsiniz!