Soru FORMÜL AÇILIMI

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
206
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Merhabalar.. Bir formülün yorumlanması noktasında yardımnıza ihtiyacım var. Burada yardımla yaptığım Etopla da ölçütümü işaret eden başka alanlarda kullanmak istediğim ama uyarlamakta güçlük çektiğim formülün anlamı nedir. Yani hangi bölüm neyi işaretliyor

For i = 3 To 179
If wf.CountA(s5.Cells(i, "A").Resize(1, 1)) > 0 Then
b1 = s5.Cells(i, "A").Resize(1, 1).Address
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
374
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
Merhabalar.. Bir formülün yorumlanması noktasında yardımnıza ihtiyacım var. Burada yardımla yaptığım Etopla da ölçütümü işaret eden başka alanlarda kullanmak istediğim ama uyarlamakta güçlük çektiğim formülün anlamı nedir.

For i = 3 To 179
If wf.CountA(s5.Cells(i, "A").Resize(1, 1)) > 0 Then
b1 = s5.Cells(i, "A").Resize(1, 1).Address
1. For i = 3 To 179
Bu satır, i değişkeni için 3 ile 179 arasındaki değerlerle bir döngü başlatır. Yani bu döngü, i değişkeni 3'ten 179'a kadar (her bir değeriyle) çalışacaktır.

2. If wf.CountA(s5.Cells(i, "A").Resize(1, 1)) > 0 Then
Bu satır, şu işlemi gerçekleştirir:
  • wf bir çalışma sayfası nesnesini (Worksheet object) temsil ediyor. Bu nesne, hücrelerdeki verileri saymak için kullanılır.
  • s5.Cells(i, "A") ifadesi, s5 adlı çalışma sayfasındaki "A" sütunundaki i satırındaki hücreyi temsil eder. Yani döngü her çalıştığında, i değeri değişir ve bu satırdaki hücreyi ifade eder.
  • .Resize(1, 1) kısmı, bir hücreyi "1 satır ve 1 sütun" boyutunda (yani yalnızca tek bir hücre) büyütmek için kullanılır. Bu aslında gereksiz, çünkü zaten tek bir hücreyi hedef alıyorsunuz.
  • wf.CountA(...) fonksiyonu, belirtilen hücre aralığındaki dolu (boş olmayan) hücreleri sayar. Eğer hücrede herhangi bir veri varsa, CountA 1 değerini döndürecektir, eğer boşsa 0 döner.
  • If wf.CountA(...) > 0 Then kısmı, sadece bu hücrede bir değer olup olmadığını kontrol eder. Yani, hücre boş değilse, döngü içerisindeki kod çalıştırılacak.
3. b1 = s5.Cells(i, "A").Resize(1, 1).Address
Bu satırda, eğer hücrede bir değer varsa, o hücrenin adresi alınır ve b1 adlı bir değişkene atanır.
  • s5.Cells(i, "A").Address ifadesi, "s5" sayfasındaki belirtilen hücrenin adresini (örneğin, "$A$3") döndürecektir.
Özetle:
Bu kod, "s5" sayfasındaki A sütunundaki 3. satırdan 179. satıra kadar olan hücreleri kontrol eder. Eğer hücrede bir değer varsa, o hücrenin adresi (b1 değişkenine) atanır. b1 her döngüde, verisi olan hücrenin adresiyle güncellenir.

Ancak, kod şu anda her iterasyonda b1 değerini yalnızca son doğrulanan hücrenin adresiyle güncelliyor. Eğer bu değerleri biriktirmeniz veya başka bir şekilde kullanmanız gerekiyorsa, b1'in değerini bir listeye veya diziye eklemeniz gerekebilir.
 

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
206
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Hocam süpersin ya bu ne hız böyle.. Peki şu sormak istiyorum. Bunu Etopla da ölçüt olarak kullanıyorum. Ölçütümde 100 kodunu kullanıyorum. Ama bana aralık olarak sadece 100 kodunu değil alttaki bütün 100 ile başlayan kodların toplamlarını da getiriyor. Bunun için b1 adresine nasıl bir tanımlama eklemeliyim.
100 =100.000
100.01 =100.000
100.01.001 =100.000
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
374
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
Hocam süpersin ya bu ne hız böyle.. Peki şu sormak istiyorum. Bunu Etopla da ölçüt olarak kullanıyorum. Ölçütümde 100 kodunu kullanıyorum. Ama bana aralık olarak sadece 100 kodunu değil alttaki bütün 100 ile başlayan kodların toplamlarını da getiriyor. Bunun için b1 adresine nasıl bir tanımlama eklemeliyim.
100 =100.000
100.01 =100.000
100.01.001 =100.000
soruyu anlamadım hocam
 

walabi

Altın Üye
Katılım
22 Eylül 2012
Mesajlar
950
Excel Vers. ve Dili
excel 2010

excel 2013
Altın Üyelik Bitiş Tarihi
06-08-2025
soruyu anlamadım hocam
Sanırım şunu demek istemiş; 100 ile başlayan bütün kodların yanlarındaki sayısal değerleri topluyor. Görseldeki gibi bir durum olarak algıladım.
 

Ekli dosyalar

Üst