- Katılım
- 15 Mart 2005
- Mesajlar
- 42,747
- Excel Vers. ve Dili
- Microsoft 365 Tr-En 64 Bit
KTF örneğini inceleyin...
Örnek
Kullanılan fonksiyon;
Örnek
Kullanılan fonksiyon;
Kod:
=BENZERSIZ($B$4:$B$1000;D$3&"*";SATIR()-3;0)
Kod:
Option Explicit
Function BENZERSIZ(Alan As Range, Kriter As Variant, Kacinci As Long, Optional Alfabetik As Byte = 1) As String
Dim DiziA As Object, DiziB As Object, Veri As Range, Data As Variant, Aranan As String, Bul As Range, Satir As Variant
Set DiziA = CreateObject("System.Collections.Arraylist")
Set DiziB = CreateObject("System.Collections.Arraylist")
Set Bul = Alan.Find(Kriter, , , xlWhole)
If Not Bul Is Nothing Then
Satir = Split(Alan.Address, "$")
Satir = Satir(UBound(Satir))
Set Alan = Range(Cells(Bul.Row, Alan.Column), Cells(Satir, Alan.Column))
End If
For Each Veri In Alan
If Veri.Text <> "" Then
Aranan = UCase(Replace(Replace(CStr(Trim(Veri.Text)), "ı", "I"), "i", "İ"))
If Not DiziA.Contains(Aranan) Then
DiziA.Add Aranan
DiziB.Add CStr(Trim(Veri.Text))
End If
End If
Next
If Kacinci <= DiziB.Count Then
Select Case Alfabetik
Case 0
BENZERSIZ = DiziB.Item(Kacinci - 1)
Case 1
DiziB.Sort
BENZERSIZ = DiziB.Item(Kacinci - 1)
Case 2
DiziB.Sort
DiziB.Reverse
BENZERSIZ = DiziB.Item(Kacinci - 1)
End Select
End If
End Function
Ekli dosyalar
-
15.6 KB Görüntüleme: 21