Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Вносить дату последнего изменения при вводе в соседнюю ячейк - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вносить дату последнего изменения при вводе в соседнюю ячейк (Макросы/Sub)
Вносить дату последнего изменения при вводе в соседнюю ячейк
koyaanisqatsi Дата: Четверг, 21.04.2016, 19:16 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 713
Репутация: 15 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте.
Подскажите пожалуйста. Хочу к одному коду прикрутить второй. Идея в том чтобы отслеживать последние изменения столбца "L" записывать дату последнего изменения в соседний столбец.

В файле пример в листе Овощи вписал код. Но не работает.

Логин/Пароль: Пользователь 444

[vba]
Код
Private s$
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim oComment As Comment, un$
    On Error Resume Next
    Set oComment = Target.Comment
    un = WorksheetFunction.VLookup(GetUserName_3(2), Ëèñò4.[A2:B999], 2, False)
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(un & " " & Format(Now, "dd.mm.yy HH:MM") & ":" & Chr(10) & s & "-->>" & Target.Text)
        oComment.Shape.TextFrame.AutoSize = True
    Else
        oComment.Text oComment.Text & Chr(10) & un & " " & Format(Now, "dd.mm.yy HH:MM") & ":" & Chr(10) & s & "-->>" & Target.Text
        oComment.Shape.TextFrame.AutoSize = True
    End If
        
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
s = Target.Cells(1, 1)
End Sub
[/vba]

Хочу этот код приделать :

[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Intersect(Columns("l"), Target(1)).Offset(, 1) = Now
End Sub
[/vba]

Пытался вставить внутрь кода. Не сработало . Ниже всего кода писал не работало выдавало ошибку в первой строке последнего кода.
К сообщению приложен файл: _12.xlsb (82.7 Kb)


Сообщение отредактировал koyaanisqatsi - Четверг, 21.04.2016, 19:33
 
Ответить
СообщениеЗдравствуйте.
Подскажите пожалуйста. Хочу к одному коду прикрутить второй. Идея в том чтобы отслеживать последние изменения столбца "L" записывать дату последнего изменения в соседний столбец.

В файле пример в листе Овощи вписал код. Но не работает.

Логин/Пароль: Пользователь 444

[vba]
Код
Private s$
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim oComment As Comment, un$
    On Error Resume Next
    Set oComment = Target.Comment
    un = WorksheetFunction.VLookup(GetUserName_3(2), Ëèñò4.[A2:B999], 2, False)
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(un & " " & Format(Now, "dd.mm.yy HH:MM") & ":" & Chr(10) & s & "-->>" & Target.Text)
        oComment.Shape.TextFrame.AutoSize = True
    Else
        oComment.Text oComment.Text & Chr(10) & un & " " & Format(Now, "dd.mm.yy HH:MM") & ":" & Chr(10) & s & "-->>" & Target.Text
        oComment.Shape.TextFrame.AutoSize = True
    End If
        
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
s = Target.Cells(1, 1)
End Sub
[/vba]

Хочу этот код приделать :

[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Intersect(Columns("l"), Target(1)).Offset(, 1) = Now
End Sub
[/vba]

Пытался вставить внутрь кода. Не сработало . Ниже всего кода писал не работало выдавало ошибку в первой строке последнего кода.

Автор - koyaanisqatsi
Дата добавления - 21.04.2016 в 19:16
buchlotnik Дата: Четверг, 21.04.2016, 21:09 | Сообщение № 2
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
так нужно? [vba]
Код
If Target.Column <> 1 Then Cells(Target.Row, 1) = Now
[/vba]
К сообщению приложен файл: 1084143.xlsb (78.7 Kb)
 
Ответить
Сообщениетак нужно? [vba]
Код
If Target.Column <> 1 Then Cells(Target.Row, 1) = Now
[/vba]

Автор - buchlotnik
Дата добавления - 21.04.2016 в 21:09
koyaanisqatsi Дата: Четверг, 21.04.2016, 21:52 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 713
Репутация: 15 ±
Замечаний: 0% ±

Excel 2010
buchlotnik, Извиняюсь.
я Перепутал "i" и "l" столбцы поэтому и эфект не видел, а код был правильный я такой и хотел.

[vba]
Код
  Intersect(Columns("i"), Target(1)).Offset(, 1) = Now
[/vba]

Не разглядел строчную букву.

Все равно спасибо)


Сообщение отредактировал koyaanisqatsi - Четверг, 21.04.2016, 21:52
 
Ответить
Сообщениеbuchlotnik, Извиняюсь.
я Перепутал "i" и "l" столбцы поэтому и эфект не видел, а код был правильный я такой и хотел.

[vba]
Код
  Intersect(Columns("i"), Target(1)).Offset(, 1) = Now
[/vba]

Не разглядел строчную букву.

Все равно спасибо)

Автор - koyaanisqatsi
Дата добавления - 21.04.2016 в 21:52
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вносить дату последнего изменения при вводе в соседнюю ячейк (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!