2014-10-28 4 views
2

Я хотел знать, есть ли эффективный способ создания счетного механизма на vba с помощью события Worksheet_SelectionChange? Я хочу подсчитать, сколько раз выбрана конкретная ячейка. Если ячейка выбрана, переменная будет увеличиваться на единицу, в противном случае переменная не будет изменена.Создание счетчика в VBA

Dim S As String 
Dim count As Integer 

count = 0 
S = "$" & "D" & "$" & ActiveCell.Row 

If ActiveCell.Address = S Then 
    count = count + 1 
Else 
    count = count 
End If 

ответ

2

Это должно сработать для вас. Поместите этот код в код, расположенный за модулем рабочего листа, который вы хотите отслеживать. Измените адресную строку соответствующим образом. Обратите внимание, что это аномальная нотация, поэтому A1 не работает, но $A$1 делает.

Option Explicit 

Private count As Long 

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    Debug.Print Target.Address 
    If Target.Address = "$A$1" Then 
     count = count + 1 
     MsgBox count 
    End If 
End Sub 

Также обратите внимание, что вы должны объявить count на уровне модуля, так что он не выходит за рамки и получить сброс.

+0

Спасибо! Это сработало :) – adt772

+0

Добро пожаловать! – RubberDuck

Смежные вопросы