![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
![]()
Подсмотрел тему « Как изменить цвет», из двух примеров любезно «выложенных» SAS888, слепил код . Но когда вставил его в модуль Эта Книга , где уже присутствует код для скрытия столбцов (две верхнии строки) редактор выдает Runtime error 424 Object required и ссылается на строку
.Borders(xlEdgeLeft).LineStyle = xlNone В чем дело? Прошу помощи от знающих. Благодарю за внимание Коды модуля ЭтаКнига Private Sub Workbook_Open(): Run "Beg": End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean): Run "Ending": End Sub Код изменения цвета границ выделенной ячейки Dim OldCell As Range Private Sub ColorIndex() Set OldCell = ActiveCell End Sub Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range) With Target With .Borders(xlEdgeLeft): .LineStyle = xlContinuous: .Weight = xlThin: .ColorIndex = 8: End With With .Borders(xlEdgeTop): .LineStyle = xlContinuous: .Weight = xlThin: .ColorIndex = 8: End With With .Borders(xlEdgeBottom): .LineStyle = xlContinuous: .Weight = xlThin: .ColorIndex = 8: End With With .Borders(xlEdgeRight): .LineStyle = xlContinuous: .Weight = xlThin: .ColorIndex = 8: End With End With With OldCell .Borders(xlEdgeLeft).LineStyle = xlNone .Borders(xlEdgeTop).LineStyle = xlNone .Borders(xlEdgeBottom).LineStyle = xlNone .Borders(xlEdgeRight).LineStyle = xlNone End With Set OldCell = Target End Sub |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
Ошибка из-за того, что это (как и последующие) свойство относится к ячейке OldCel, которая у Вас не определена. Для устранения ошибки, строку кода
Код:
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 21.06.2012 в 04:05. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
![]()
SAS888, Спасибо конфликт исчез, но всплыло другое, а именно: При выборе ячеек существующей таблицы происходит уничтожение границ(линий) ячейки(диапазона).
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
При активации ячейки макрос меняет существующие границы на свои. При деактивации - уничтожает все границы.
Для того, чтобы границы не уничтожались, а восстанавливались, нужно их запоминать. Все возможные границы и их свойства запоминать ни к чему. Прикрепите Ваш файл с прорисованными границами (можно без значений ячеек) - посмотрим, как лучше сделать.
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
![]()
Вот файл, и еще - необходимо чтобы границы не менялись при скрытии и отображении столбцов
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
Весь код в модуле "Эта книга" замените на следующий:
Код:
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
![]()
Сразу, извиняюсь за назойливость, понимаю что, поднятая тема не так уж и важна для решения даже не глобальных задач, но "А" было произнесено, хотелось бы услышать и "Б". Благодарен SAS888 за решение, цветная ячейка действительно акцентирует внимание на рабочем листе, линии границ таблицы остаются первобытными при "хождении" по таблице.
Осталась неудолетворенность от: 1). В моем примере(Акт1) границы исчезают при скрытии столбцов(правая кнопка мышки) 2). Невозможно прорисовать границы ячейки при создании новой таблицы. Прошу помощи у профи VBA. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Конфликт кодов | Brucebelg | Microsoft Office Excel | 3 | 10.02.2012 12:20 |
Конфликт перехвата? | Fedor666 | Общие вопросы C/C++ | 0 | 27.11.2011 12:28 |
конфликт jquery | johny_03 | JavaScript, Ajax | 1 | 18.11.2011 00:09 |
Конфликт IP | Fellics{новичок} | Компьютерное железо | 3 | 30.12.2009 19:15 |
Конфликт версий? | Bezdar | Microsoft Office Excel | 8 | 06.07.2009 17:44 |