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;
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
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...
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