Я в очень странной ситуации в VBA. Я новичок в VBA и борюсь с парой дней в решении этой проблемы.Как заблокировать данные в ячейке, содержащей формулы, чтобы они не могли быть изменены в excel с помощью vba
Я хочу заблокировать верхние три строки и первые три столбца моего листа excel для редактирования. Однако эти ячейки содержат формулы, которые я не хочу, чтобы конечный пользователь редактировал и вносил изменения. Таким образом, в основном, мне нужно, чтобы ячейки выполняли все операции, но не должны редактироваться. Как можно, я делаю это в VBA. Я использую Excel 2010.
Еще одна вещь, у меня есть кнопка в верхних рядах ($B$2:$C$3)
, занимающая четыре ячейки. Эта кнопка назначается макросу, который выполняет задание по очистке содержимого во всех ячейках, за исключением ячейки, которую я намерен заблокировать. Короче говоря, в других ячейках пользователь может экспортировать данные из блокнота, и после этого формулы в заблокированной ячейке будут выполнять эту работу. Когда пользователь должен экспортировать новый набор данных, он будет указывать на кнопку, которая находится в ($B$2:$C$3)
, которая очищает существующие данные, и пользователь может ввести новый набор данных из блокнота.
Когда я использую
Worksheets("Sheet1").Range("B2:C3").Locked = False
Worksheets("Sheet1").Protect UserInterfaceOnly:=True
моя кнопка в ($B$2:$C$3)
не работает должным образом. Любая помощь от кого-либо будет запрошена. Заранее большое спасибо.
Пожалуйста, обратитесь к этой теме http://stackoverflow.com/questions/3037400/how-to-lock-the-data-in-a-cell-in-excel-using-vba – 2013-03-28 13:16:24
Спасибо за ответ Сантош. Но проблема в том, что моя кнопка не работает с этим кодом. Вышеупомянутый код, который я упомянул в вопросе, взят с этой должности. –
Когда вы говорите, что кнопка не работает, что вы имеете в виду? Кроме того, применяете ли вы защиту с UserInterFaceOnly каждый раз, когда вы открываете книгу? –