Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как подсвечивать строку с курсором без тормозов? / 7 сообщений из 7, страница 1 из 1
22.07.2006, 16:17:35
    #33871871
Sasha_P
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
Excel97. Сейчас я делаю в selectionChange вот так:

Код: plaintext
1.
2.
3.
4.
5.
            Cells.Interior.ColorIndex = xlNone
            With ActiveCell.EntireRow.Interior
                .ColorIndex =  6 
                .Pattern = xlSolid
            End With

но проблема в том, что первая строка довольно долго исполняется и поэтому не очень удобно пользоваться и выглядит при листанни некрасиво, визуально видно как курсор "опережает" выделение - то есть курсор уже в следующей строке, а выделена предыдущая.

Хочется избавится от этих тормозорв. Пробовал сделать статическую переменную previusRange, и вместо тормозной строки писать previusRange.interior.colorIndex= xlNone, а после изменения цвета PreviusRange = ActiveCell
не получается. Такое впечатление, что последняя команда не срабатывает. не могу понять в чем дело?

В архиве пример с этим кодом.
...
Рейтинг: 0 / 0
23.07.2006, 00:38:20
    #33872128
Дмит
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
Хорошее решение http://]http://www.puremis.net/excel/downloads.shtml с открытым кодом Cell_Spotter.zip
...
Рейтинг: 0 / 0
23.07.2006, 17:41:54
    #33872435
Sasha_P
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
нет, к сожалению решение не очень, но все равно спасибо. Отдельным шейпом - это конечно альтернатива, но ИМХО не та, на которой следует остановить свой выбор. У меня подсвечивает красивей (-:

Мне хочется именно избавиться от команды деланья всей страницы бесцветной - занимает слишком много времени. Если я смогу этого добиться, то будет мне счастье, а пока что я не смог этого сделать и поэтому я весь в печали )-:
...
Рейтинг: 0 / 0
24.07.2006, 06:19:31
    #33872677
Letter_D
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
Вместо
Код: plaintext
previus = ActiveCell
Надо так:
Код: plaintext
Set previus = ActiveCell
Бо нам тут нужен объект типа Range, а не его значение...
...
Рейтинг: 0 / 0
24.07.2006, 13:48:44
    #33873813
Sasha_P
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
set previus = ActiveCell тоже не помогло. ):
Все равно такое впечателние, что строка не исполняется.

п.с. сменил офис на 2003.
...
Рейтинг: 0 / 0
24.07.2006, 13:57:37
    #33873856
Sasha_P
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
Сорри, это я провтыкал. Конструкция заработала. Спасибо
...
Рейтинг: 0 / 0
24.07.2006, 15:23:10
    #33874169
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как подсвечивать строку с курсором без тормозов?
Sasha_PСорри, это я провтыкал. Конструкция заработала. Спасибо
Класная штука получилось.
Я немного переделал
положил в модуль "Эта книга"
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Public previus As Range
Public first As Boolean

Private Sub Workbook_Open()
    Set previus = Selection
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Set previus = Selection
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    previus.EntireRow.Interior.ColorIndex = xlNone
    Target.EntireRow.Interior.ColorIndex =  6 
    Set previus = Target
End Sub
получилось подсвечивается все выделенное (причем даже несмежные диапозоны)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как подсвечивать строку с курсором без тормозов? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]