Kelime içindeki sessiz harfların diziliş sıralarını yazdırmak.

Katılım
3 Ekim 2007
Mesajlar
10
Excel Vers. ve Dili
2003-2007 türkçe
Merhaba,

Ekte bulunan denemem1 (excel 2003) a1 ve b1 hücrelerinde bulunan kelimenin ilk harflerini ve sessiz harflarin kelime içindeki sıra numaralarını nasıl yazdırabilirim. Umarım dosya içindeki açıklama yeterlidir.
 

Ekli dosyalar

Son düzenleme:
Katılım
3 Ekim 2007
Mesajlar
10
Excel Vers. ve Dili
2003-2007 türkçe
Merhaba,

Konu hakkında en azından fikri olan arkadaş yokmu?
 
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
bu kodlar işinizi görecektir.
Kod:
Sub kodla()
Dim k() As String
a = Cells(1, 2) & Cells(1, 1)
ReDim k(1 To Len(a))
For i = 1 To Len(a)
    k(i) = Mid(a, i, 1)
Next
sonuc = Mid(Cells(1, 2), 1, 1) & Mid(Cells(1, 1), 1, 1)
For i = Len(Cells(1, 2)) + 1 To Len(a)
    If InStr(1, "bcçdfgğhjklmnprsitvyz", k(i)) > 0 Then
    sonuc = sonuc & i
    End If
Next
For i = 1 To Len(Cells(1, 2))
    If InStr(1, "bcçdfgğhjklmnprsitvyz", k(i)) > 0 Then
    sonuc = sonuc & i
    End If
Next
cells(1,3)=sonuc
MsgBox sonuc
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
KTF hazırladım.
Kullanılışı
=sessizler(B1;A1)
D2 hücresindeki formüle bakınız.:cool:
Kod:
Function sessizler(deg1 As Range, deg2 As Range)
Dim dizi As Variant, deg As String, degler As String, k As Integer, j As Integer
dizi = Array("", "B", "C", "Ç", "D", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "X", "Y", "Z")
deg = Left(deg2, 1) & Left(deg1, 1)
degler = deg1 & deg2
    For k = 1 To Len(degler)
        For j = 1 To UBound(dizi)
            If UCase(Mid(degler, k, 1)) = dizi(j) Then
                deg = deg & k
                Exit For
            End If
        Next j
    Next k
sessizler = deg
End Function
 

Ekli dosyalar

Üst