• DİKKAT

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

Tuş Saydırma

Katılım
22 Mart 2012
Mesajlar
229
Excel Vers. ve Dili
2010 Türkçe
İyi günler;
Excel de basılan tuş sayısını sayabilecek bir makro var mıdır? Ayrıca 99 ve 98 i 1'er tuş olarak saydırmak istiyorum. Şimdiden teşekkür ederim.
Düzeltme " A1 ile N1 arası giriş yapıldığı düşünülürse O1 de basılan tuş sayısı yazması gerekmektedir ve her satır için yinelenecektir."
 
Son düzenleme:
Doğru mu anladım bilmiyorum ? Aşağıdaki kodu dener misiniz ?
İlgili sayfanın kod kısmına;
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address <> "$O$1" Then Exit Sub
    If Target.Value = 98 Or Target.Value = 99 Then
    s = s + 1
    End If
End Sub
Bir Module içine;
Kod:
Public s As Long
Sub say()
MsgBox s
End Sub
ekleyin.
 
Hamit Bey,
İlginiz için teşekkürler,
Msgbox ile değilde "O" sütununda basılan tuş sayısının yazmasını istemiştim.Yani görüntü ekteki dosyada olduğu gibi olmalı.
 

Ekli dosyalar

Formül ile yapılmış çözüm;
Kod:
=EĞERSAY(A2:N2;"=98")+EĞERSAY(A2:N2;"=99")
Kod ile çözüm;
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column > 14 Then Exit Sub
    If Target.Value = 98 Or Target.Value = 99 Then
    Cells(Target.Row, "O") = Cells(Target.Row, "O") + 1
    End If
End Sub
 
ben de kendi anladığım şekilde bir çözüm üretmiştim...

malum, Olay Kodu olduğu için, A-N sütunlarındaki hücrelere veri girildiği takdirde çalışır.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column > 14 Then Exit Sub
    If Target.Row = 1 Then Exit Sub
    
    For i = 1 To 14
        HucreSay = IIf((Cells(Target.Row, i) = 98 Or Cells(Target.Row, i) = 99), 1, Len(Cells(Target.Row, i)))
        TuSSay = TuSSay + HucreSay
    Next
    Cells(Target.Row, "O") = TuSSay
End Sub
 
İlginiz ve cevaplarınız için teşekkürler.
 
Geri
Üst