• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Hücrede Kaç Adet Benzersiz Harf Var

Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Merhaba Arkadaşlar,
Bir hücrede kaç adet BENZERSİZ HARF olduğunu hesaplatabilir miyiz ! (tüm veriler büyük harf)
Örneğin;
AYVA = 3
KAYYUM = 5
SİİRT = 4
KANUN = 4
GİTAR = 5
 
Merhaba,

Dizi formülüdür.
Kod:
=BAĞ_DEĞ_SAY(1/SIKLIK(KAÇINCI(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1)
 ;PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);0);SATIR(DOLAYLI("1:"&UZUNLUK(A1)))))
 
Bulunduğu link

Kod:
Public Function UniqueChars(ByVal OrigString As String) _
  As String

'INPUT: ANY STRING
'OUTPUT: The Unique Characters of the string, in the order
'        They First appear
'Example: Debug.Print(UniqueChars("FreeVBCode")):
'         Outputs: FreVBCod

Dim oCol As New Collection
Dim sAns As String
Dim lCtr As Long, lCount As Long
Dim sChar As String

lCount = Len(OrigString)

For lCtr = 1 To lCount
    sChar = Mid(OrigString, lCtr, 1)
    On Error Resume Next
    oCol.Add sChar, sChar
    If Err.Number = 0 Then sAns = sAns & sChar
    Err.Clear
Next

UniqueChars = sAns

End Function

Public Function UniqueCharCount(ByVal TheString As String) _
   As Long
    UniqueCharCount = Len(UniqueChars(TheString))
End Function
 
Merhaba,

Dizi formülüdür.
Kod:
=BAĞ_DEĞ_SAY(1/SIKLIK(KAÇINCI(PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1)
;PARÇAAL(A1;SATIR(DOLAYLI("1:"&UZUNLUK(A1)));1);0);SATIR(DOLAYLI("1:"&UZUNLUK(A1)))))
Ömer üstadım, emeğinize sağlık, çok teşekkür ediyorum. Sağlıcakla kalın
 
Bulunduğu link

Kod:
Public Function UniqueChars(ByVal OrigString As String) _
  As String

'INPUT: ANY STRING
'OUTPUT: The Unique Characters of the string, in the order
'        They First appear
'Example: Debug.Print(UniqueChars("FreeVBCode")):
'         Outputs: FreVBCod

Dim oCol As New Collection
Dim sAns As String
Dim lCtr As Long, lCount As Long
Dim sChar As String

lCount = Len(OrigString)

For lCtr = 1 To lCount
    sChar = Mid(OrigString, lCtr, 1)
    On Error Resume Next
    oCol.Add sChar, sChar
    If Err.Number = 0 Then sAns = sAns & sChar
    Err.Clear
Next

UniqueChars = sAns

End Function

Public Function UniqueCharCount(ByVal TheString As String) _
   As Long
    UniqueCharCount = Len(UniqueChars(TheString))
End Function
excelokyanus500 üstadım, emeğinize sağlık, çok teşekkür ediyorum. Sağlıcakla kalın
 
Alternatif;

KTF;

C++:
Option Explicit

Function BENZERSİZ_HARF_SAY(Alan As Range)
    Dim X As Long
   
    Application.Volatile True
   
    With CreateObject("Scripting.Dictionary")
        For X = 1 To Len(Alan.Value)
            If Not .Exists(Mid(Alan.Value, X, 1)) Then
                .Add Mid(Alan.Value, X, 1), 1
            End If
        Next
        BENZERSİZ_HARF_SAY = .Count
    End With
End Function
 
Alternatif;

KTF;

C++:
Option Explicit

Function BENZERSİZ_HARF_SAY(Alan As Range)
    Dim X As Long
  
    Application.Volatile True
  
    With CreateObject("Scripting.Dictionary")
        For X = 1 To Len(Alan.Value)
            If Not .Exists(Mid(Alan.Value, X, 1)) Then
                .Add Mid(Alan.Value, X, 1), 1
            End If
        Next
        BENZERSİZ_HARF_SAY = .Count
    End With
End Function
Korhan Ayhan üstadım harika bir alternatif oldu. Emeğinize sağlık, çok teşekkür ederim. Sağlıcakla kalın
 
Geri
Üst