VBA ile Yalnızca Belirgin Pozitif Değerler Ekleyin

Anonim

Yalnızca pozitif ve benzersiz değerleri nasıl ekleyebileceğinizi merak ediyorsanız, bu makale tam size göre.

Bu makalede, VBA kodunu kullanarak excel'de yalnızca farklı pozitif değerleri nasıl ekleyeceğinizi öğreneceksiniz.

Soru): Negatif ve pozitif sayıları içeren belirli bir aralıktaki tüm farklı pozitif sayıları toplamak için bir makro istiyorum.

Elimizdeki verilerin anlık görüntüsü aşağıdadır:

Aşağıdaki adımları izlememiz gerekiyor:

  • Geliştirici sekmesine tıklayın
  • Kod grubundan Visual Basic'i seçin

Standart modüle aşağıdaki kodu girin:-

İşlev AddUnique(ByRef inputrange As Range, _

İsteğe Bağlı IgnoreText As Boolean = True, _

İsteğe Bağlı IgnoreError As Boolean = True, _

Opsiyonel IgnoreNegativenumbers As Boolean = True)

Dim farklı sayıları Çift olarak

Aralık olarak hücreyi karart

Nesne Olarak Dim dict

Set dict = CreateObject("Scripting.dictionary")

farklı sayılar = 0

Her hücre için inputrange.Resize(inputrange.Rows.Count, 1)

cval = hücre.Değer

IgnoreText ise

Değilse (VBA.IsNumeric(cval)) O zaman cval = 0

Başka

AddUnique = CVERr(0)

Çıkış Fonksiyonu

Bitir

IgnoreError ise

Eğer IsError(cval) ise cval = 0

Başka

AddUnique = CVERr(1)

Çıkış Fonksiyonu

Bitir

Negatif Sayıları Yoksayılırsa

cval < 0 ise, cval = 0

Başka

AddUnique = CVERr(2)

Çıkış Fonksiyonu

Bitir

Değilse dict.Exists(cval) O zaman

dict.Cval, cval ekleyin

farklı sayılar = farklı sayılar + cval

Bitir

Sonraki

AddUnique = farklı sayılar

Bitiş İşlevi

  • C2 hücresinde formül şöyle olurdu:
  • =EkleBenzersiz(A2:A6)

  • Kodun tekrarlanan değeri görmezden gelip gelmediğini kontrol etmek için; A1 hücresindeki değeri 50 olarak değiştirelim ve sonucu görelim.

Bu şekilde makro kod aracılığıyla belirgin pozitif değerler ekleyebiliriz.

İndir-Örnek Dosya-xlsm