2015-10-23 4 views
1

Я создал таблицу развития бюджета предложения для факультета для использования в нашем кампусе. Электронная таблица содержит множество формул и функций для расчета зарплат и бахромы, которые были защищены, так что преподаватели не могут корректировать вычисления.Удаление последней строки в таблице защищенного листа

Первая проблема, с которой я столкнулся, позволяла конечным пользователям вводить/удалять строки с защищенными ячейками и иметь автоматическое заполнение формул, поэтому я сделал каждую часть бюджета в таблицу.

Чтобы обойти защитный аспект, я нашел код для макроса на форуме, который позволил листу быть незащищенным, вставить строку в конец таблицы и воспроизвести ее. Это код:

Sub AddRowEquipment() 
    ActiveSheet.Unprotect Password:="password" 
    Range("A44").End(xlDown).ListObject.ListRows.Add AlwaysInsert:=False 
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="password" 
End Sub 

Я просто хотел бы иметь помощь, создавая код, который делает обратное, снятие защиты листа, удаляет последнюю строку идентифицированной таблицы и reprotects его.

+1

Вы нашли код, который работает, и вы хотите сделать обратное и попросили 'много людей в, но не Оно деталь A.' никто не был в состоянии понять это Оо – findwindow

ответ

1

Попробуйте это, я предполагаю, что ваш стол начинается с ячейки A44, как на картинке ниже.
enter image description here

Sub DeleteRowEquipment() 
Dim lastrow As Integer 
lastrow = ActiveSheet.Range("A44").listobject.Range.Rows.Count 
ActiveSheet.Unprotect Password:="password" 
Range("A44").listobject.ListRows(lastrow-1).Delete 
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="password" 
End Sub 
+0

@Lydia Если это то, что вы не забудьте принять это как ответ и дать мне преимущество. – Yaegz

+0

Это не сработало. Дала мне следующую ошибку: «Ошибка времени выполнения 91: переменная объекта или с переменной блока не установлена» – Lydia

+0

@Lydia Когда вы нажимаете debug, какая строка выделена? Я изменил одну строку в своем коде. – Yaegz

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