время последнего изменения записи

Программирование на Visual Basic for Applications
Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

время последнего изменения записи

Сообщение Avtopic » 09.09.2006 (Сб) 14:39

Здравствуйте,
Чувствую, что большую глупость спрашиваю, но может, получу
неординарный ответ.

Одной команде женщин, которые каждый день заполняют и
редактируют какую то статистику, добавил в книгу такую простую
вещь:
при изменениях на листе, в той же строки, где произошло изменение,
в определенную колонку вставляется программно текущий день
(время последнего изменения записи).

И ушел. Когда появился в следующий раз, встретили бурными
овациями. Только сказали, что если не будет возможности UNDO,
тогда лучше будет, если мою утилиту удалю вообще.

Может, имеется возможность формулой зафиксировать время
последнего изменения каждой записи. Или другое решенные.
Искусственное (программно организованное) UNDO не предлагать.
Спасибо заранее.

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 09.09.2006 (Сб) 17:39

Чисто из спортивного интереса можешь попробовать вот это, но думаю, овчинка выделки не стоит :D
Вложения
Book2.xls
(521.5 Кб) Скачиваний: 63
Привет,
KL

Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

Сообщение Avtopic » 10.09.2006 (Вс) 12:04

Спасибо. Нет, это точно не буду использовать, хочет, чтобы процессор только на него работал.

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 10.09.2006 (Вс) 14:33

Ну это была только идея - можно сделать что нить более щадящее, например так:
Вложения
Book2.xls
(492 Кб) Скачиваний: 55
Привет,
KL

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.09.2006 (Вс) 14:42

Avtopic, а сколько уровней отмены надо?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 10.09.2006 (Вс) 14:44

с посл. вариантом мысль такая - девушки работают, а прога втихаря записывает ходы, не влияя на UNDO. При необходимости можно посм комментарии вручную или кнопкой ViewUpdates 2. Ну а при аудите, когда UNDO какбы никчему ViewUpdates 1
Привет,
KL

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 11.09.2006 (Пн) 12:10

Еще такой вариант:

Код: Выделить всё
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim c As Range
    If Intersect(Target, [A2:K1000]) Is Nothing Then Exit Sub
    Set rng = ActiveCell
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    For Each c In Intersect(Target, [A2:K1000])
        Cells(c.Row, "L").Activate
        SendKeys Now & "{HOME}"
    Next c
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub
Привет,
KL

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 11.09.2006 (Пн) 12:15

lapink2000, хороший вариант, но я бы еще посоветовал использовать Format$() (чтобы передовать строку с учетом локали) и в полученной строке экранировать управляющие символы.
Lasciate ogni speranza, voi ch'entrate.

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 11.09.2006 (Пн) 12:26

alibek писал(а):...использовать Format$() (чтобы передовать строку с учетом локали) и в полученной строке экранировать управляющие символы.


Пожалуй :-)
Привет,
KL

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 11.09.2006 (Пн) 12:29

да, и выбросить строку Set rng = ActiveCell - она осталась там случайно
Привет,
KL

Avtopic
Постоялец
Постоялец
 
Сообщения: 442
Зарегистрирован: 30.09.2005 (Пт) 17:15
Откуда: Tbilisi

Сообщение Avtopic » 11.09.2006 (Пн) 12:32

Извините, Отсутствовал, не смог прочитать ваши ответы, Всем спасибо. Особое спасибо то lapink2000 :)


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 55

    TopList