2015-02-06 2 views
0

Это моя проблема. Мне нужен мой макрос VBA, чтобы сделать определенное количество верхних строк (скажем, N) в электронной таблице Excel только для чтения, поэтому пользователь не сможет их по ошибке изменить. Тем не менее, мне нужно, чтобы пользователь мог редактировать и изменять другие строки в одной и той же электронной таблице. Если я сделаю что-то вродеКак сделать отдельные строки в электронной таблице Excel доступными только для чтения через VBA Macro?

Range("A1:J10").Select 
    Selection.Locked = True 
    ActiveSheet.Protect Contents:=True 

затем вся электронная таблица блокируется. Если, с другой стороны, я опускаю строку ActiveSheet.Protect Contents:=True (не защищайте лист), ничто не блокируется вообще.

Итак, вопрос в том, возможно ли заблокировать только указанные строки, разрешая пользователю редактировать остальные из них? Я был бы признателен за то, что это делает код VBA.

ответ

2

По умолчанию все ячейки на листе заблокированы = True, но это не действует до тех пор, пока лист не будет защищен.

Вам необходимо будет разблокировать ячейки, которые вы хотите сохранить редактируемыми до защиты листа.

+0

Да, это сработало, спасибо! – Evgraph

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