Bu yazıda, tanımlanan aralıktan benzersiz değerleri bulmak için özel fonksiyon oluşturacağız.
Bu örnek için ham veriler, A8:A21 aralığındaki ülke adının yinelenen girişlerinden oluşur.
Mantıksal açıklama
Aralıktan benzersiz değerleri çıkarmak için özel bir "UniqueItem" işlevi yarattık. Bu fonksiyon girdi olarak iki parametre alır. Birinci parametre, yinelenen verilerden oluşan aralıktır ve ikinci parametre, benzersiz koleksiyondaki benzersiz bir değerin dizin numarasını tanımlar.
Bu işlev, dizin numarasına göre aralıktan benzersiz değeri döndürür. İkinci parametre isteğe bağlı bir parametredir, ikinci parametre belirtilmezse işlev, tanımlanan aralıktaki benzersiz değer sayısını döndürür.
İkinci parametre için tanımlanan değer, aralıktaki benzersiz değer sayısından büyükse, işlev tarafından son benzersiz değer döndürülür.
Kod açıklaması
Hatada Devam Et Sonraki
InputRange'daki Her CellValue için
CUnique.Add CellValue.Value, CStr(CellValue.Value)
Sonraki
Hatada GoTo 0
Yukarıdaki kod, tanımlanan aralıktan benzersiz bir değer içerecek koleksiyon nesnesi oluşturmak için kullanılır. “On Error” ifadeleri hataları işlemek için kullanılır, çünkü kod koleksiyona yinelenen değerler koymaya çalıştığında koleksiyon bir hata oluşturur.
Lütfen kod için aşağıdan takip edin
Seçenek Açık İşlev UniqueItem(Aralık Olarak GirdiAralığı, Tamsayı Olarak Opsiyonel ÖğeNo = 0) Varyant Olarak Dim CellValue As Range Dim CUnique As InputRange CUnique .Add CellValue.Value, CStr(CellValue.Value) Sonraki Hatada GoTo 0 'Koleksiyondaki benzersiz öğe sayısı alınıyor UCount = CUnique.Count If ItemNo = 0 O zaman 'Benzersiz öğenin döndürülmesi UniqueItem = UCount ElseIf ItemNo <= UCount Ardından 'Öğe numarasına dayalı benzersiz değer döndürme UniqueItem = CUnique(ItemNo) Else 'Son benzersiz değeri döndürme UniqueItem = CUnique(UCount) End If End Function
Bu blogu beğendiyseniz, Facebook'ta arkadaşlarınızla paylaşın. Ayrıca bizi Twitter ve Facebook'ta da takip edebilirsiniz.
Sizden haber almayı çok isteriz, işimizi nasıl geliştirebileceğimizi ve sizin için nasıl daha iyi hale getirebileceğimizi bize bildirin. E-posta sitesinde bize yazın