İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Excel-də müəyyən bir hüceyrədə ümumi tıklamaları necə saymaq olar?

Bu yazı, Excel-də müəyyən bir hüceyrədə ümumi tıklamaları saymaqdan bəhs edir.

VBA kodu ilə müəyyən bir hüceyrədə ümumi tıklamaları saymaq


VBA kodu ilə müəyyən bir hüceyrədə ümumi tıklamaları saymaq


Excel-də müəyyən bir hüceyrədə ümumi tıklamaları saymaq üçün xahiş edirik.

1. Çalışma kitabında, ümumi tıklamaları saymaq üçün lazım olan hüceyrəni ehtiva edir, hesabatı sekmesini sağa vurun və sonra basın Kodları baxın kontekst menyusundan.

2. İçində Proqramlar üçün Microsoft Visual Basic Pəncərədən, VBA kodu aşağıda Kod pencerəsinə kopyalayıb yapışdırın.

VBA kodu: Excel-də müəyyən bir hüceyrədə ümumi tıklamaları saymaq

Public xRgS, xRgD As Range
Public xNum As Long
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
    Set xRgS = Range("E2")
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Range("H2")
    If xRgD Is Nothing Then Exit Sub
    If Intersect(xRgS, Target) Is Nothing Then Exit Sub
    xNum = xNum + 1
    xRgD.Value = xNum
End Sub

Qeyd: Kodda, E2, ümumi tıklamalarını saymaq üçün lazım olan hüceyrədir və H2 hesablamanın çıxışı hüceyrəsidir. Lazım olduğunuz halda onları dəyişdirin.

3. Basın Dayandırmaq + Q düymələri bağlamaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

İndi bu müəyyən iş yerində E2 hücresinə tıklandığında, ümumi kliklər H2 hücresinde avtomatik olaraq doldurulacaq və ekran görüntüsü aşağıda göstərilir. Örneğin, E2 5 hücrenizi tıkladığınızda, sayı 5, H2 hücresinde görüntülenecektir.



Təklif olunan Məhsuldarlıq Vasitələri

Office Tab

qızıl star1 Chrome, Firefox və yeni Internet Explorer kimi Excel və digər Office proqramlarına lazımlı sekmeleri gətirin.

Excel üçün Kutools

qızıl star1 Amazing! 5 dəqiqədə məhsuldarlığınızı artırın. Heç bir xüsusi bacarıqa ehtiyac yoxdur, hər gün iki saat saxlaya bilərsiniz!

qızıl star1 300 Excel üçün yeni funksiyalar, Excel çox asan və güclü olun:

  • Veriyi ləğv etmədən Cell / Satır / Sütunları birləşdirin.
  • Bir neçə Çarşaf və İş Kitabını birləşdirin və birləşdirin.
  • Çaprazları müqayisə edin, birdən çox aralığa kopyalayın, mətni tarixə, vahidə və valyuta çevrilməsinə çevirin.
  • Rənglər, Paging Subtotals, Advanced Sort və Super Filter tərəfindən sayılan,
  • Daha çox seçin / Insert / Sil / Mətn / Biçim / Bağlantı / Yorum / Çalışma kitabları / Çalışma Qurğuları Tools ...

Excel üçün Kutools-un ekranı

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Barbara · 1 months ago
    Can you provide a code that allows counting clicks from A2, B2 cells through A14, B14 cells. Thanks in advance.
  • To post as a guest, your comment is unpublished.
    Andrés · 3 months ago
    Hola
    Hay alguna manera de programar el conteo de clicks de acuerdo a la fecha, es decir programar varias celdas para que cuenten con la fecha del día?
  • To post as a guest, your comment is unpublished.
    Demetrius · 5 months ago
    Hello, there is a way to back the counting for any number that I want? For exemple: I'd made 5 clicks, but i just wanted 3. So I change the number in the cell to 3, and when I click again, it continue from 3.
    Thank for the code!
  • To post as a guest, your comment is unpublished.
    Guido · 11 months ago
    Thank you for the code, very useful.
    I'm not a programmer and I would like to know how to extend this process to every line. That is to say, not only E2>H2 but also E3>H3, E4>H4, and so on.
    Is there a code for this?


    Thank you in advance!
    • To post as a guest, your comment is unpublished.
      crystal · 8 months ago
      Hi Guido,

      The below VBA code can help you to solve the problem. Please have a try. Thanks for your comment.
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Dim xRgArray As Variant
      Dim xNum
      Dim xStrR, xStrS, xStrD As String
      Dim xRgS, xRgD As Range

      Dim xFNum As Long
      xRgArray = Array("E2,H2", "E3,H3", "E4,H4", "E5,H5", "E6,H6")
      On Error Resume Next
      If Target.Cells.count > 1 Then Exit Sub
      For xFNum = LBound(xRgArray) To UBound(xRgArray)
      xStrR = xRgArray(xFNum)
      xStrS = ""
      xStrS = Left(xStrR, 2)
      xStrD = ""
      xStrD = Right(xStrR, 2)
      Set xRgS = Nothing
      Set xRgS = Range(xStrS)
      If TypeName(xRgS) <> "Nothing" Then
      Set xRgD = Nothing
      Set xRgD = Range(xStrD)
      If TypeName(xRgD) <> "Nothing" Then
      If TypeName(Intersect(xRgS, Target)) <> "Nothing" Then
      xRgD.Value = xRgD.Value + 1
      End If
      End If
      End If
      Next
      End Sub
      • To post as a guest, your comment is unpublished.
        Ruth · 8 months ago
        Thanks for this. I tried and it worked, however it only worked only until certain number of cells, how can we extend this code until the end of the cells? for example i type in this code below and it only works until "G9,G9". Thanks


        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Dim xRgArray As Variant
        Dim xNum
        Dim xStrR, xStrS, xStrD As String
        Dim xRgS, xRgD As Range

        Dim xFNum As Long
        xRgArray = Array("C4,C4", "D4,D4", "E4,E4", "F4,F4", "G4,G4", "C6,C6", "D6,D6", "E6,E6", "F6,F6", "G6,G6", "C7,C7", "D7,D7", "E7,E7", "F7,F7", "G7,G7", "C8,C8", "D8,D8", "E8,E8", "F8,F8", "G8,G8", "C9,C9", "D9,D9", "E9,E9", "F9,F9", "G9,G9", "C10,C10", "D10,D10", "E10,E10", "F10,F10", "G10,G10", "C11,C11", "D11,D11", "E11,E11", "F11,F11", "G11,G11", "C14,C14", "D14,D14", "E14,E14", "F14,F14", "G14,G14", "C15,C15", "D15,D15", "E15,E15", "F15,F15", "G15,G15", "C16,C16", "D16,D16", "E16,E16", "F16,F16", "G16,G16", "C17,C17", "D17,D17", "E17,E17", "F17,F17", "G17,G17", "C18,C18", "D18,D18", "E18,E18", "F18,F18", "G18,G18", "C20,C20", "D20,D20", "E20,E20", "F20,F20", "G20,G20")
        On Error Resume Next
        If Target.Cells.count > 1 Then Exit Sub
        For xFNum = LBound(xRgArray) To UBound(xRgArray)
        xStrR = xRgArray(xFNum)
        xStrS = ""
        xStrS = Left(xStrR, 2)
        xStrD = ""
        xStrD = Right(xStrR, 2)
        Set xRgS = Nothing
        Set xRgS = Range(xStrS)
        If TypeName(xRgS) <> "Nothing" Then
        Set xRgD = Nothing
        Set xRgD = Range(xStrD)
        If TypeName(xRgD) <> "Nothing" Then
        If TypeName(Intersect(xRgS, Target)) <> "Nothing" Then
        xRgD.Value = xRgD.Value + 1
        End If
        End If
        End If
        Next
        End Sub
        • To post as a guest, your comment is unpublished.
          crystal · 8 months ago
          Hi Ruth,
          The code is hard to optimized for meeting your needs. Sorry about that.
  • To post as a guest, your comment is unpublished.
    Dennis · 1 years ago
    How can you "reset" the counter?
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Dear Dennis,
      Please add the below VBA code at the end of the original code. Every time you run this code, the counting will be reset to 0. Thank you for your comment.

      Sub ClearCount()
      xRgD.Value = ""
      xNum = 0
      End Sub