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...
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
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…