Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2012, 19:30   #1
LastFenix
Новичок
Джуниор
 
Регистрация: 12.06.2012
Сообщений: 2
По умолчанию Макрос для блокировки заполненных ячеек

Люди добрые, помогите с макросом. Есть таблица на 5 столбцов, в неё люди каждый день забивают необходимые данные. Смысл в том чтоб при открытии файла все строки, дата занесения которых старше 2ух месяцев удалялись. Все оставшиеся заполненные ячейки блокировались для какого либо изменения в зависимости от пользователя, под которым они вошли (аля, если пользователь "пользователь1", то заблокировать для изменения, если нет, то оставить разблокированными).
Удаление сделал при помощи вот такого кода:

Sub Block()
Set Sheet = ActiveSheet
Cells.Locked = False
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = LastRow To 2 Step -1
If DateDiff("d", Sheet.Cells(i, 1), Date) > 60 Then
Rows(i).Delete
End If
Next i
End Sub

Помогите пожалуйста с остальным. Пример таблицы приложил.
Вложения
Тип файла: zip Пример.zip (15.0 Кб, 33 просмотров)

Последний раз редактировалось LastFenix; 12.06.2012 в 19:41.
LastFenix вне форума Ответить с цитированием
Старый 12.06.2012, 20:19   #2
LastFenix
Новичок
Джуниор
 
Регистрация: 12.06.2012
Сообщений: 2
По умолчанию

Понял как можно заблокировать ячейки.

Sub Block()
Set Sheet = ActiveSheet
Cells.Locked = False
Sheet.Unprotect
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = LastRow To 2 Step -1
If DateDiff("d", Sheet.Cells(i, 1), Date) > 60 Then
Rows(i).Delete
End If
Next i
LastRow2 = Cells(Rows.Count, 1).End(xlUp).Row
Range(Sheet.Cells(2, 1), Sheet.Cells(LastRow2, 4)).Locked = True
Sheet.Protect
End Sub

Теперь остаётся только выполнить проверку пользователя, под которым открывается документ.

Последний раз редактировалось LastFenix; 12.06.2012 в 23:31.
LastFenix вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как посчитать количество заполненных ячеек Azatania22 Microsoft Office Excel 40 16.12.2012 03:13
Подсчет заполненных ячеек, удовлетворяющих условию Anechka_ Microsoft Office Excel 3 30.03.2012 11:47
Использование только заполненных ячеек nicuav Microsoft Office Excel 8 19.05.2011 14:15
копирование заполненных ячеек maratmm Microsoft Office Excel 0 12.11.2010 16:49
подсчет заполненных ячеек extremobile Microsoft Office Excel 2 28.05.2009 17:26