VBA_Excel Basic Programlama Hücrede aranan karkterin toplam tekrar sayısı

NBATMAN

Üye
Katılım
7 Şub 2008
Mesajlar
136
Puanları
1
Merhaba arkadaşlar,

aşağıda bulanan EXCEL VBA kodları ile;

A sütununda hücrelerdeki veriler içinde, C2 hücresindeki karakterlerin aranarak tekrar sayısının, A sütunundaki içinde veri aranan hücrenin 1 sağındaki ( b sütunundaki ) hücreye yazılması işlemini yaptım...

Buna göre;

  • A sütununda içinde karakter tekrarı aranılacak veri bulunur
  • B sütununda bu arama sonucunda bulunan tekrar sayısı gösterilir
  • C2 hücresinde tekrar sayısı öğrenilecek karakter veya karakterler bilgisi girilir
  • D2 hücresinde a sütunundaki en son dolu satır sayısına ait bilgi gösterlir...
    smile.gif
Umarım yararlı olur...


Sayfa1 e bir adet CommandButton1 ekleyerek içine aşaşğıdaki kodlarını yazınız.
Dim aranacak As String
Dim k As Integer
Dim say As Integer
Dim sat As Integer
Dim i As Integer
Dim aranan As String

Private Sub CommandButton1_Click()
On Error Resume Next 'oluşacak hataları görmezden gelmek için kullanılır...
Range("B2:B65536").Value = ""
Set s1 = Sheets("Sayfa1") 's1 değişkenine Kitabın sayfa1 ismi aktarılıyor...
sat = s1.[A65536].End(3).Row 'sayfa1 isimli sayfada A sütununda bulunan enson dolu hücrenin satır sayısı sat isimli değişkene aktarılıyor.
Range("D2").Value = sat ' D2 hücresine sat değişkenindeki değer aktarılır....
aranan = Range("C2").Value ' aranan değişkenine Ci hücresindeki değerindeki bilgi aktarılır...
If aranan = "" Then ' aranan değişkeni boş ise
MsgBox "Aranan bilgisi boş olamaz! Bunun için [ C2 ] hücresine; A sütununda bulunan satırlarda ki veriler içinde aranmak üzere bir karakter veya karakterler Giriniz!", vbOKOnly, "Uyarı"
Exit Sub
Else
For i = 2 To sat 'Döngü: i değişkeni için 2 den başlamak üzere Sat değişkenindeki değere kadar bir döngü oluşturuluyor...
'döngü ile birlikte aşağıdaki işlemler sat değişkeninde ki değer kadar tekrarlanır...

aranacak = Sayfa1.Cells(i, "A").Value 'aranacak değişkene A sütununda i değişekenindeki değere ait satırda hücrede bulunan veri alınır.
If aranacak = "" Then ' eğer aranacak değişkeni boş ise
Sayfa1.Cells(i, "B").Value = "" ' b sütununda arancacak verinin bulunduğu hücrenin bulunduğu satıra ait B sütunundaki hücreyi temizle,boş bırakır...
Else ' eğer aranacak değişkeni boş değil ise
k = 0 'k değişkenine 0 değeri atanır...
say = 0 'say değişkenine 0 değeri atanır...
Do ' bir döngü daha kurulur...
k = InStr(k + 1, aranacak, aranan) ' K değişkenine; aranacak değer içindeki aranan karakterin sayısı kadar döngü oluşturulur.
say = say + 1 ' say değişkenine say değişkenin kendisi ve 1 değeri eklenir...
If k = 0 Then Exit Do ' eğer k değişkenindeki değer 0 ise yani arancak veri içinde aranan değer yok ise
Loop '2.dögüden çıkılır...
Sayfa1.Cells(i, "B").Value = say - 1 'aranacak değer içindeki aranan karakterin sayısı B sütununda i değişkenindeki sayıya ait satırın bulunduğu hücreye yazılır.
End If
Next
End If
End Sub
 

Forum istatistikleri

Konular
128,190
Mesajlar
915,723
Kullanıcılar
449,960
Son üye
katzeimar

Yeni konular

Geri
Üst