powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выделение ячейки
10 сообщений из 10, страница 1 из 1
Выделение ячейки
    #39453800
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здраствуйте!

Если программно выделять ячейку на листе, то обычно на экране эта ячейка находится посередине по вертикали. Но если отключить обновление экрана, то выделенная ячейка находится либо где то внизу, либо наверху или вообще вне экрана. Как можно обойти эту проблему?
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453813
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы позиция сместилась, экран надо обновить - а ты запретил.
Вот теперь подумай, что ты собсно спросил...
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453827
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ferzmikk,

Вместо выделения попробуйте использовать Application.Goto. Второй параметр = true
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453850
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist , запрет обновления экрана имеет приоритет.
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453890
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запустил. Application.Goto при запрете обновления экрана работает.
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453981
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ferzmikk , тогда версию Офиса назовите... потому как у меня в Excel 2007 SP2 MSO - не работает.
...
Рейтинг: 0 / 0
Выделение ячейки
    #39453994
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina ferzmikk , тогда версию Офиса назовите... потому как у меня в Excel 2007 SP2 MSO - не работает.
2013
...
Рейтинг: 0 / 0
Выделение ячейки
    #39454349
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akinaзапрет обновления экрана имеет приоритетНе согласен. Скорее всего речь-то о том, чтобы после работы кода ячейка была выделена и экран сместился, а не во время выполнения непосредственно. Пока обновление отключено - не сработает и не отобразит. Но как только обновление вернуть в True - то все перерисуется на нужную область. Такое поведение наблюдается у всех версий Excel, начиная с 2000 точно.
Вот, простой код:
Код: vbnet
1.
2.
3.
4.
5.
6.
Sub ttt()
    Range("a1").Select
    Application.ScreenUpdating = 0
    Application.Goto "r500c60", True
    Application.ScreenUpdating = 1
End Sub


уверен, у Вас тоже заработает.
...
Рейтинг: 0 / 0
Выделение ячейки
    #39454429
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятно, что после возобновления обновления экрана всё взлетает... а вот в варианте
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Range("a1").Select
Application.ScreenUpdating = False
Application.Goto "далеко", True ' вот этого мы не увидим
Call LongSub ' какой-нить Sleep
Application.Goto "ещё дальше", True ' и это пока не увидим
Call LongSub
Application.ScreenUpdating = True ' а вот теперь увидим
...
Рейтинг: 0 / 0
Выделение ячейки
    #39454472
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПонятно, что после возобновления обновления экрана всё взлетает.Так я думаю так и надо было. Просто если делать обычный Select - то после возобновления обновления экрана видимая область листа будет там же, где была до отключения обновления, независимо от активной ячейки.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выделение ячейки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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