|
Подскажите по параметрам метода защиты определенной области листа Excel. | ☑ | ||
---|---|---|---|---|
0
IBTM
24.12.13
✎
12:12
|
Привет! Есть образец, делаю по нему:
ТекЛист = Книга.ActiveSheet; ТекЛист.Protect("123",True,True,,,,,,,,,,,True,True,); но при таких параметрах блокируется весь лист, а мне нужно только некую часть, которая будет всегда меняться. Может у кого есть описание параметров данного метода ну или с ходу кто скажет? |
|||
1
Cube
24.12.13
✎
12:20
|
(0) Так Яндекс знает все... Кури MSDN, можешь начать отсюда: http://msdn.microsoft.com/ru-ru/library/microsoft.office.tools.excel.worksheet.protect.aspx
|
|||
2
grayshadow
24.12.13
✎
12:35
|
сначала у ячеек свойство поставить... Protected вроде называется
потом лист.Protect |
|||
3
grayshadow
24.12.13
✎
12:37
|
ЭксельЛист.Cells(Счетчик, СтолбецКолво).Locked = 0;
|
|||
4
IBTM
24.12.13
✎
12:37
|
(1) Спасибо большое! Получается, что нет там параметров выбора определенных областей для защиты. Может тогда метод не тод я выбрал? Вижу только тогда вариант, сначала формировать область которую надо заблокировать, затем присоединить всё остальное. Может есть у кого идеи получше?
|
|||
5
grayshadow
24.12.13
✎
12:38
|
в области которую НЕ нужно блокировать делаешь (3)
потом на весь лист Protect |
|||
6
IBTM
24.12.13
✎
12:39
|
(5) спасибо, ща пробую
|
|||
7
IBTM
24.12.13
✎
13:22
|
ну вроде получается, но... для столбцов я тоже цикл сделал т.к. не понял что за СтолбецКолво, там же вроде должен быть номер столбца. Споткнулся на таком моменте, не устанавливается
Locked для ячейки состоящей из двух колонок (она объеденина). Как быть, черт бобери? |
|||
8
IBTM
24.12.13
✎
13:24
|
вот код:
Для Строка = ПоследняяСтрокаБлокировки + 1 По ВсегоСтрок Цикл Для Колонка = 1 По ВсегоКолонок Цикл Если Колонка = 3 Тогда Колонка = Колонка + 1; КонецЕсли; ТекЛист.Cells(Строка, Колонка).Locked = Ложь; КонецЦикла; КонецЦикла; |
|||
9
IBTM
24.12.13
✎
13:25
|
ой, вернее вот:
Для Строка = ПоследняяСтрокаБлокировки + 1 По ВсегоСтрок Цикл Для Колонка = 1 По ВсегоКолонок Цикл ТекЛист.Cells(Строка, Колонка).Locked = Ложь; КонецЦикла; КонецЦикла; |
|||
10
IBTM
24.12.13
✎
13:26
|
Для Строка = ПоследняяСтрокаБлокировки + 1 По ВсегоСтрок Цикл
|
|||
11
IBTM
24.12.13
✎
13:43
|
подниму.... Споткнулся на таком моменте, не устанавливается
Locked для ячейки состоящей из двух колонок (она объеденина). Как быть, черт бобери? |
|||
12
IBTM
24.12.13
✎
14:23
|
{Форма.ФормаОтправки.Форма(44)}: Ошибка при установке значения атрибута контекста (Locked)
ТекЛист.Cells(Строка, Колонка).Locked = Ложь; по причине: Произошла исключительная ситуация (Microsoft Office Excel): Нельзя установить свойство Locked класса Range |
|||
13
IBTM
24.12.13
✎
15:40
|
() вот если кому понядобится, по теме...
http://support.microsoft.com/kb/291308 (3) это не сработает при объеденной ячейки. Или я не прав... там написано использовать не "Cells", а "Range". но не срабатывает, блокирует опять весь лист. ЧЯДНТ? ТекЛист = Книга.ActiveSheet;
|
|||
14
grayshadow
24.12.13
✎
15:56
|
йахз почему, но через 1с нельзя использовать range
по крайней мере у меня всегда глючит:) cells наше всё |
|||
15
grayshadow
24.12.13
✎
15:58
|
на объединенных не пробовала, но можно попробовать первую ячейку разлочить
|
|||
16
IBTM
24.12.13
✎
16:03
|
(14) видимо да
(15) что значит "разлочить"? |
|||
17
grayshadow
24.12.13
✎
16:05
|
ну locked = 0:)
|
|||
18
IBTM
24.12.13
✎
17:49
|
Получилось, всем спасибо за участие.
|
|||
19
grayshadow
24.12.13
✎
18:48
|
don't mention:)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |