EXCEL VBA'DA DO UNTİL LOOP [DO UNTİL DÖNGÜSÜ]

 

VBA Do Until Döngüsü, Excel için temel bir programlama yapısıdır. Belirli bir koşul karşılanana kadar bir kod bloğunu tekrar tekrar yürütmek için kullanılır. Bu döngü, belirli bir koşul gerçekleşene kadar eylemleri tekrarlarken kullanışlıdır. Do Until Döngüsü, Excel elektronik tablolarındaki görevleri otomatikleştirmek ve verileri işlemek için etkili bir yol sağlar.


1'den 10'a kadar saymak için VBA Do Until Loop'u kullanacağımız bir örneğe bakalım. Sayaç değişkeni 1'den başlar ve sayaç > 10 koşulu karşılanmadığı sürece döngü çalışmaya devam eder. Her yineleme sırasında, sayacın değeri Debug.Print ifadesi kullanılarak yazdırılır ve dizideki her sayı ortaya çıkarılır.

VBA Do Until Döngüsü Giriş

Daha sonra sayaç 1'er artar ve bu işlem koşul sağlanana ve çıktı anlık pencerede görülene kadar devam eder.

VBA Do Until Döngüsü Giriş - Çıktı

ÖNEMLİ NOKTALAR

  1. VBA Excel'deki Do Until Döngüsü, belirtilen bir koşul gerçekleşene kadar bir kod bloğunu tekrarlar.
  2. Yineleme sayısını takip etmek için VBA Do Until Döngüsü içinde bir VBA Do Until Döngüsü sayaç değişkeni kullanabilirsiniz.
  3. Do Until Döngüsü Excel'de sayma, hesaplama ve veri işleme gibi çeşitli görevler için kullanılabilir.
  4. VBA Do Until döngüsünün temeli koşullara dayanır. Belirtilen koşul yanlış kaldığı sürece, döngü yürütülmeye devam eder. Koşul doğru olarak değerlendirildiğinde, döngü zarif bir şekilde sonlanır.

Sözdizimi

VBA Excel'deki Do Until Döngüsü, aynı sonucu elde etmek için iki farklı sözdizimi çeşidi sunar: Belirtilen bir koşul gerçekleşene kadar bir VBA kod bloğunu tekrar tekrar yürütmek:

Syntax Variation 1 – Do Until

Do Until condition

    ‘ Yürütülecek kod

Loop

Bu sözdiziminde, döngü “Do Until” ifadesinden hemen sonra başlar ve koşul yanlış kaldığı sürece kod bloğunu yürütmeye devam eder. Döngü “Loop” ifadesiyle sona erer. Koşul her yinelemeden önce değerlendirilir ve kod bloğunun yalnızca koşul yanlış olduğunda yürütülmesi sağlanır.

Syntax Variation 2 – Do … Loop Until

Do

    ‘ Yürütülecek kod

Loop Until condition

Bu sözdiziminde, döngü başlangıçta koşulu kontrol etmeden kod bloğunu yürütür. Koşul yanlış kaldığı sürece döngü yürütülmeye devam eder. Döngü "Loop Until" ifadesiyle sona erer ve koşul her yinelemeden sonra değerlendirilir. Bu sözdizimi, kod bloğu en az bir kez yürütülene kadar koşul denetimini geciktirir.

Bu sözdiziminde, döngü başlangıçta koşulu kontrol etmeden kod bloğunu yürütür. Koşul yanlış kaldığı sürece döngü yürütülmeye devam eder. Döngü "Loop Until" ifadesiyle sona erer ve koşul her yinelemeden sonra değerlendirilir. Bu sözdizimi, kod bloğu en az bir kez yürütülene kadar koşul denetimini geciktirir.

Sözdizimi Çeşitleri Arasındaki Farklar

Birincil ayrım, koşul değerlendirmesinin zamanlamasında yatmaktadır. "Do Until" sözdizimi, her yinelemeden önce koşulu kontrol ederek kod bloğunun yalnızca koşul yanlış olduğunda yürütülmesini sağlar. Öte yandan, "Do … Loop Until" sözdizimi, koşulu değerlendirmeden önce kod bloğunu en az bir kez yürütür ve bu da koşul başlangıçta doğru olsa bile kod bloğunun yürütülmesine yol açabilir.

VBA Excel'de Do Until Döngüsü Nasıl Kullanılır?

VBA Excel'de Do Until Döngüsünü nasıl kullanabileceğiniz aşağıda açıklanmıştır:

Adım 1: Excel'de Visual Basic for Applications (VBA) düzenleyicisini açın. Düzenleyiciyi açmak için Alt + F11 tuşlarına basın.

VBA Do Until Döngüsü - Adım 1.jpg

Adım 2: VBA düzenleyicide, var olan herhangi bir modüle veya sol bölmedeki çalışma kitabı adına sağ tıklayarak – Ekle – Modül – yeni bir modül ekleyin.

VBA Do Until Döngüsü - Adım 2.jpg

Adım 3: Döngüden önce gerekli değişkenleri tanımlayın ve başlatın.

Adım 4: Döngünün devam edebilmesi için karşılanması gereken koşulu belirterek VBA Do Until Döngü yapısını kurun.

Adım 5: Tekrarlamak istediğiniz kodu döngünün içerisine yerleştirin.

Adım 6: Döngü, belirtilen koşul True olarak değerlendirilene kadar içindeki kodu tekrar tekrar yürütecektir.

Adım 7: Koşul True olduğunda döngüden çıkılacak ve program sonraki kodu yürütmeye devam edecektir.

Örnekler

VBA Do Until döngüsünün uygulanmasına dair bazı örneklere bakalım.

Örnek 1

Bu örnekte, 5'in faktöriyelini sistematik bir şekilde hesaplamak ve göstermek için VBA Do Until Döngüsünü kullanacağız.

Adım 1: Yeni modülde, “CalculateFactorial” adlı bir alt rutin oluşturarak başlayın.

VBA Do Until Döngüsü - Örnek 1 - Adım 1.jpg

Adım 2: Burada iki değişken tanımlıyoruz: faktöriyelini hesaplayacağımız sayıyı tutacak olan num ve hesaplanan faktöriyel değerini saklayacak olan factorial.

VBA Do Until Döngüsü - Örnek 1 - Adım 2.jpg

Adım 3: Daha sonra num değişkenine 5 değerini atarız, bu da 5'in faktöriyelini hesaplamak istediğimizi gösterir. Faktöriyel değişkeni, hesaplamalarımız için bir başlangıç ​​noktası olarak kullanılacak olan 1'e ayarlanır.

VBA Do Until Döngüsü - Örnek 1 - Adım 3.jpg

Adım 4: Do Until Döngüsü burada başlar. num = 0 koşulu yanlış kalırsa döngü içindeki kodu yürütmeye devam edecektir. Başka bir deyişle, döngü 'num' 0 olana kadar çalışacaktır.

VBA Do Until Döngüsü - Örnek 1 - Adım 4.jpg

Adım 5: Döngü içinde, faktöriyel değişkeni geçerli değeri num'ın geçerli değeriyle çarpılarak güncellenir. Döngüde yineleme yaparken faktöriyel ürününü etkili bir şekilde biriktirir.

VBA Do Until Döngüsü - Örnek 1 - Adım 5.jpg

Adım 6: num değeri her yinelemede 1 azaltılır. 5'ten 1'e kadar sayarken döngüde ilerlememizi sağlar.

VBA Do Until Döngüsü - Örnek 1 - Adım 6.jpg

Adım 7: num = 0 koşulu yanlış kalırsa döngü yukarıdaki adımları yürütmeye devam edecektir. num 0 olduğunda, döngü sonlanır ve program bir sonraki kod satırına geçer.

VBA Do Until Döngüsü - Örnek 1 - Adım 7.jpg

Adım 8: Hesaplanan 5 faktöriyel, faktöriyel değişkeninde saklanır. Bu kod satırı, hesaplanan faktöriyel değerini Immediate penceresinde ve açıklayıcı bir mesajda görüntülemek için VBA'daki Debug.Print ifadesini kullanır.

VBA Do Until Döngüsü - Örnek 1 - Adım 8.jpg

Adım 9: Modülü kaydedin ve Çalıştır'a tıklayın. Kodu çalıştırdığınızda, Hemen penceresinde 5'in faktöriyelini göreceksiniz.

VBA Do Until Döngüsü - Örnek 1 - Adım 9.jpg

İşte kodun tamamı:

Sub CalculateFactorial()
Dim num As Integer
Dim factorial As Long
num = 5 ‘ Calculate factorial for the number 5
factorial = 1 ‘ Initialize factorial to 1
Do Until num = 0 ‘ Loop continues until num becomes 0
factorial = factorial * num ‘ Multiply factorial by num
num = num – 1 ‘ Decrement num by 1
Loop
Debug.Print “Faktöriyel 5: ” & factorial
End Sub

Örnek 2

Bu örnekte, VBA Do Until Döngüsünün çift sayıların toplamını nasıl hesapladığına bakacağız. Sağlanan kod, döngünün 2'den 20'ye kadar çift sayıları nasıl verimli bir şekilde eklediğini ve kümülatif toplamı nasıl yazdırdığını göstermektedir.

Adım 1: Yeni modülde “SumEvenNumbers” adında bir alt rutin oluşturun.

VBA Do Until Döngüsü - Örnek 2 - Adım 1.jpg

Adım 2: İki değişken bildirerek başlıyoruz: çift sayıların toplamını toplamak için sum ve üzerinde çalışacağımız sayıları temsil etmek için num. Her iki değişken de başlatılır, sum 0'a ve 'num' hesaplamalarımızın başlangıç ​​noktası olarak 2'ye ayarlanır.

Örnek 2 - Adım 2.jpg

Adım 3: Do Until Döngüsü burada başlar. num > 20 koşulu yanlış kaldığı sürece döngü içindeki kodu yürütmeye devam eder. Döngü, num 20 değerini geçene kadar çift sayıları işlemeye devam etmemizi sağlar.

Örnek 2 - Adım 3.jpg

Adım 4: Döngünün içinde, toplam değişkeni num'ın geçerli değeri eklenerek güncellenir. Bu kümülatif ekleme, çift sayıların sürekli olarak çalışan toplama eklenmesini sağlar.

Örnek 2 - Adım 4.jpg

Adım 5: Döngünün her yinelemesinde num değeri 2 artırılır. Bu adım, işleme tabi tutulacak bir sonraki çift sayıya geçmek için çok önemlidir.

Örnek 2 - Adım 5.jpg

Adım 6: num > 20 koşulu yanlış kalırsa döngü yukarıdaki adımları kalıcı olarak yürütecektir. num, 20 değerini aştığında döngü sona erer ve program bir sonraki kod satırına ilerler.

Örnek 1 - Adım 7.jpg

Adım 7 : Döngü bittikten sonra, çift sayıların hesaplanan toplamı sum değişkeninde saklanır. Bu kod satırı, toplamı Immediate penceresinde ve bilgilendirici bir mesajda görüntülemek için Debug.Print ifadesini kullanır.

Örnek 2 - Adım 7.jpg

Adım 8: Makroyu kaydedin ve Çalıştır'a tıklayın. Kodu çalıştırdığınızda, çift sayıların toplamının hesaplandığını ve Hemen penceresinde görüntülendiğini göreceksiniz.

Örnek 2 - Adım 8.jpg

İşte kodun tamamı:

Sub SumEvenNumbers()
Dim sum As Integer
Dim num As Integer
sum = 0
num = 2
Do Until num > 20
sum = sum + num
num = num + 2
Loop
Debug.Print “Çift sayıların toplamı: ” & sum
End Sub

Dikkat Edilmesi Gereken Önemli Noktalar

  1. Sonsuz döngülerden kaçınmak için Do Until döngüsünde belirtilen koşulun eninde sonunda sağlandığından emin olun.
  2. VBA Do Until Loop'un gücü kontrollü tekrarlamada yatar. Belirli bir koşul karşılanana kadar tekrarlanması gereken görevleri verimli bir şekilde otomatikleştirmenizi sağlayarak manuel çabayı azaltır.
  3. VBA'daki bir If ifadesi içindeki "Exit Do" ifadesi, VBA Do Until Döngüsünün belirli koşullara bağlı olarak ne zaman bozulacağını kontrol etmenizi sağlar.
  4. Döngünün geçerli yinelemesinin geri kalanını atlayıp bir sonrakine geçmek için bir "If" ifadesi kullanarak "VBA Do Until Döngüsü devam eder" etkisi elde edebilirsiniz.


Yorum Gönder

DT KARİYER KPSS Dünyasına Hoş Geldiniz
Sevgili dostum nasıl yardımcı olabilirim?
Bu alana yazınız...