| 
| 
 | Вопрос # 3 716/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!
 После выполнения кода:
 ActiveWindow.ScrollColumn = Val(ComboBox3) + 2 'Фиксирование столбца у вертикальной границы закрепления области
 Происходит защита листа:
 Worksheets("Расход").Protect Password:="1111" 'Защитить лист паролем
 Но если произвести двойной клик по защищенному листу, то фиксированный столбец возвращается в исходное положение (то есть восстанавливается первоначальное положение закрепление области)
 Как это избежать?
 Как разблокировать нижнюю ячейку после даты, фиксированную у вертикальной границы закрепления области, а также разблокировать столбец со строки 41 под датой, фиксированного у вертикальной границы закрепления области.
 Для того чтобы произвести данное действие и понять смысл необходимо выполнить условия (для этого будут выходить подсказки)
 К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса) 
|  |   Вопрос задал: resseg (статус: Посетитель)Вопрос отправлен: 30 января 2010, 14:26
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 21; последнее сообщение — 31 января 2010, 18:02; участников в обсуждении: 2. Страницы: [1] [2] [Следующая »]  
|   | Егор (статус: 10-ый класс), 30 января 2010, 17:18 [#1]:файл скачал, двойной щелчок сделал. защита не снимается не понял
 
 использую excel 2003
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 17:27 [#2]:Произведите все необходимые действия: Выбор месяца- выберите январь
 Выбор даты- выберите например 30
 Выбор фирмы- необходимо создать/ введите фирму/клик по синему/затем выберите фирму из раскрывающегося списка.
 Затем произведите клик по кнопке со знаком -
 Что произойдет, сообщите.
 |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 17:47 [#3]:слева остался заголовок ------------------------
 расход дтл январь
 ...
 4 Камаз 4
 ------------------------
 
 а справа - столбцы АF, AG, AH с данными - по датам от 30/01/10 и 31/01/10
 сделал двойной щелчок - лист вернулся к дате 01/01/10
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 17:52 [#4]:Вот вот, первое лист не должен возвращаться к исходной дате или к вертикальной границы закрепления области. 
 Данный код
 ActiveWindow.ScrollColumn = Val(ComboBox3) + 2
 Выставляет столбец с выбранной датой, у вертикальной границы закрепления области.
 |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 18:14 [#5]:эксель делает переход, чтобы показать активную ячейку (пусть даже и не показывается, что она выделена). если сделать активной ячейку AI1, например, то после двойного щелчка будет прокрутка к последнему столбцу даже если выбрать первую дату. выход - нужно не только делать скроллинг но и менять активную ячейку.
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 18:18 [#6]:Я проделывал данное действие без кода, на простом листе, там такого перехода нет… |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 18:34 [#7]:может быть, на пустом листе такого и нет а здесь есть.
 
 "чудны дела твои, о БГ"
  )) 
 
 ...
        ActiveWindow.ScrollColumn = Val(ComboBox3) + 2 'Фиксирование столбца у вертикальной границы закрепления области
 
        '________________________________...Ваш код SERG
 
        Range("A" + Trim(Str(ComboBox3.Value))).Select ' <<==== добавляем переход к новой активной ячейке
...теперь по двойному щелчку не перескакивает.
 
 можно оформлять как ответ?
 
  )))))))) Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 18:35 [#8]:момент |  
|   | resseg (статус: Посетитель), 30 января 2010, 18:41 [#9]:Чудные дела твои Егор. Можно оформлять как ответ. Тогда я задам новый вопрос по этой теме. Так как вопрос имеет продолжение, это было описано выше.
 Как разблокировать нижнюю ячейку после даты, фиксированную у вертикальной границы закрепления области, а также разблокировать столбец со строки 41 под датой, фиксированного у вертикальной границы закрепления области.
 |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 18:51 [#10]:бррр... не понял
  уж прошу прощения
  - суббота, вечер, знаете ли...  )) 
 Цитата (resseg): разблокировать нижнюю ячейку после даты, фиксированную у вертикальной границы закрепления области, а также разблокировать столбец со строки 41 под датой, фиксированного у вертикальной границы закрепления области не варит башка
  попонятнее бы, а?
 ну, типа, вот выбрали мы дату 31/01/10 (как выше описано) и должны разблокироваться ячейки такие-то
 
   Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 18:53 [#11]:момент |  
|   | resseg (статус: Посетитель), 30 января 2010, 19:05 [#12]:Возьмем текущую дату 30 После клика по кнопке со знаком "–" лист с данной датой зафиксируется на вертикальной границы закрепления области. (это Вы знаете)
 Необходимо разблокировать или снять защиту с ячейки которая находится под фиксированной датой (в данном случае у нас 01.30.09), для того чтобы пользователь мог ввести числовое значение температуры.
 Также необходимо снять защиту или разблокировать столбец со строки 41 под фиксированной датой, для ввода данных.
 |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 19:10 [#13]:т.е. разблокировать ячейки AF5 и AF41:AF45? Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 19:25 [#14]:В зависимости от даты разблокировать столбец данной даты. Разблокировать ячейку под датой (ячейка под датой не имеет постоянной строки) и столбец (начальные координаты столбца постоянно начинаются со строки 41, вертикально тоже под выбранной датой). 
 ..........01.30.2010
 ..........0.............разблокировать
 ..........-
 ..........-
 41........0.............разблокировать
 42........0.............разблокировать
 43........0.............разблокировать
 ........................и так далее вниз по стобцу
 |  
|   | Егор (статус: 10-ый класс), 30 января 2010, 19:32 [#15]:если мы не знаем адрес ячейки 
 Цитата (resseg): ячейка под датой не имеет постоянной строки то как мы определим, какую нужно разблокировать?
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 19:39 [#16]:Для полной картины снимите защиту и откройте скрытые строки: Ячейка температур находится всегда под ячейкой выбранной даты (ячейка даты тоже не имеет постоянную строку), если за основу взять формат даты найденной ячейки…?
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 19:56 [#17]:В принципе адрес это нижняя ячейка которая находится под ячейкой с датой зафиксированной у вертикальной границы закрепления области… Что то в этом роде.
 |  
|   | resseg (статус: Посетитель), 30 января 2010, 20:28 [#18]:Может условие? Взять объект Lab_Data (объект где формируется дата) If Lab_Data = ( ячейки с датой данного диапозона) Then
 Плюс на ячейку ниже разблокировать...
 |  
|   | Егор (статус: 10-ый класс), 31 января 2010, 10:48 [#19]:честно говоря, не знаю, как разблокировать отдельную ячейку. это какое свойство? и чему его нужно установить? 
 а после ответа на этот вопрос снять блокировку-то, в общем, несложно
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | resseg (статус: Посетитель), 31 января 2010, 17:41 [#20]:Что то в этом роде для ячейки Selection.Locked = False
 
 Затем заблокировать лист паролем
 Worksheets("Расход").Protect Password:="1111"
 |  Страницы: [1] [2] [Следующая »]  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |