Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отцентрировать ячейку на экране, Быстрый переход по таблицам 
V
    Опции темы
FINANSIST
Дата 9.6.2009, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Статус: Жив
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 11.4.2008
Где: Москва

Репутация: 13
Всего: 23



Создал в меню Excel 
Код

   With MenuBars("Worksheet").Menus.Add(Caption:="Навигация")
      ' Добавление кнопки
      .MenuItems.Add Caption:="Просмотр", OnAction:="Макрос1"
...............................................................................................

ссылки для быстрой навигации в множестве таблиц
По нажатию происходит Application.go to reference:= в именнованный диапозон
Но грабли лежат в кривой центровке после перехода, т.к. именнованные диапозоны это последние скрытые строки каждой таблицы (с шаблонными данными для программного копирования новых строк)
Соответственно по нажатию на ссылки в меню, искомой таблицы вообще не видно, а видно только её последнюю скрытую строку в верхушке экрана, либо наоборот - видно только заголовок искомой таблицы в самом низу: это как "повезёт" :(
Смотрел в сторону методов
Код

ActiveWindow.PointsToScreenPixelsX
.................................................................
ActiveWindow.PointsToScreenPixelsY
.................................................................
ActiveWindow.ScrollIntoView
..................................................................

Но эсперименты с ними плодотворного результата не принесли (видимо неправильно их использовал)
Желаю увидеть советы знающих людей на тему: "как разместить активную ячейку строго по центру экрана?"

Это сообщение отредактировал(а) FINANSIST - 15.6.2009, 17:39


--------------------
“...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности”
Эдуард Успенский, “Каникулы в Простоквашино”
PM MAIL ICQ   Вверх
RockClimber
Дата 17.6.2009, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



Если номер строки именованного диапазона всегда больше номера строки ячейки, которую надо паказать, на фиксированное число строк, то можно показать примерно так:
Код

Cells(Range("название диапазона").Row-X, Range("название диапазона").Column).Select
, где Х - насколько выше нужно подняться.
Недостатки - нужно знать, на каком листе этот диапазон и открыть сначала этот лист. Еще можно сделать
Код

ActiveWindow.ScrollRow = Range("название диапазона").Row-X
После этой строчки вверху будет строка с номером Range("название диапазона").Row-X


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
FINANSIST
Дата 17.6.2009, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Статус: Жив
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 11.4.2008
Где: Москва

Репутация: 13
Всего: 23



Вопрос решен - тема закрыта smile 


--------------------
“...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности”
Эдуард Успенский, “Каникулы в Простоквашино”
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0390 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.