Запишите пользователя, который редактировал столбцы диапазона - PullRequest
0 голосов
/ 10 марта 2019

Этот сценарий VBA записывает в столбец A пользователя, который изменил столбец B.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updated by Extendoffice 2017/10/12
    Dim xRg As Range, xCell As Range
    On Error Resume Next
    If (Target.Count = 1) Then
        If (Not Application.Intersect(Target, Me.Range("B:B")) Is Nothing) Then _
            Target.Offset(0, -1) = Application.UserName
        Application.EnableEvents = False
        Set xRg = Application.Intersect(Target.Dependents, Me.Range("B:B"))
        If (Not xRg Is Nothing) Then
            For Each xCell In xRg
                xCell.Offset(0, -1) = Application.UserName
            Next
        End If
        Application.EnableEvents = True
    End If
End Sub

Мне нужен скрипт для: записи в столбце A имени пользователя ПК, который редактировал диапазон столбцов B: S

1 Ответ

2 голосов
/ 10 марта 2019

То есть вы хотите, чтобы имя пользователя было записано в столбце A, в строке все изменения вносятся в столбец B - S верно?Так что-то вроде:

Private Sub Worksheet_Change(ByVal Target As Range)
    If (Target.Count = 1) And Not Application.Intersect(Target, Range("B:S")) Is Nothing Then
        Cells(Target.Row, 1) = Application.UserName
    End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...