Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Расположение Userform на экране - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Расположение Userform на экране (Макросы/Sub)
Расположение Userform на экране
0beorn Дата: Четверг, 02.10.2014, 12:17 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: -5 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте.
Подскажите пожалуйста, есть ли возможность заставить Userform открываться в строго определенном месте экрана, вне зависимости от масштаба листа, разрешения экрана и т.д. И если есть - наведите на мысль, пожалуйста.=)
P.S. Свойства .left и .top, как я понимаю привязываются к расположению окошка vba, а не самой рабочей книги, что очень непрактично.
 
Ответить
СообщениеЗдравствуйте.
Подскажите пожалуйста, есть ли возможность заставить Userform открываться в строго определенном месте экрана, вне зависимости от масштаба листа, разрешения экрана и т.д. И если есть - наведите на мысль, пожалуйста.=)
P.S. Свойства .left и .top, как я понимаю привязываются к расположению окошка vba, а не самой рабочей книги, что очень непрактично.

Автор - 0beorn
Дата добавления - 02.10.2014 в 12:17
EvgenyD Дата: Четверг, 02.10.2014, 12:25 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Добрый день. В Properties есть переключатель StartUpPosition, думаю он Вам поможет. А в целом, конечно нужно файл примера, как понять что у Вас за UserForm, как она создается и т.п.
 
Ответить
СообщениеДобрый день. В Properties есть переключатель StartUpPosition, думаю он Вам поможет. А в целом, конечно нужно файл примера, как понять что у Вас за UserForm, как она создается и т.п.

Автор - EvgenyD
Дата добавления - 02.10.2014 в 12:25
0beorn Дата: Четверг, 02.10.2014, 12:48 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: -5 ±
Замечаний: 0% ±

Excel 2010
Да, но там всего базовых значения..
В файле пример, как должно получаться в итоге. Но все хорошо встает только при разрешении 1440Х900 и моих настройках интерфейса Excel. При меньшем разрешении форма уползает вниз..=(
К сообщению приложен файл: __.xls (38.0 Kb)
 
Ответить
СообщениеДа, но там всего базовых значения..
В файле пример, как должно получаться в итоге. Но все хорошо встает только при разрешении 1440Х900 и моих настройках интерфейса Excel. При меньшем разрешении форма уползает вниз..=(

Автор - 0beorn
Дата добавления - 02.10.2014 в 12:48
Pelena Дата: Четверг, 02.10.2014, 13:54 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19189
Репутация: 4421 ±
Замечаний: ±

Excel 365 & Mac Excel
0beorn, здесь не смотрели


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение0beorn, здесь не смотрели

Автор - Pelena
Дата добавления - 02.10.2014 в 13:54
0beorn Дата: Четверг, 02.10.2014, 14:37 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: -5 ±
Замечаний: 0% ±

Excel 2010
Да, и правда, полезная ссылка.. Еще не подружился с поиском по сайту..
Если это единственное решение, то это жесть..=/
Но главное, что работает! Спасибо!)
Правда, чтобы форма вылетала в нижней части экрана - надо каким-то образом определить номер нижней строки, отображаемой на экране при текущем масштабе, а с этим у меня тоже возникают проблемы..
 
Ответить
СообщениеДа, и правда, полезная ссылка.. Еще не подружился с поиском по сайту..
Если это единственное решение, то это жесть..=/
Но главное, что работает! Спасибо!)
Правда, чтобы форма вылетала в нижней части экрана - надо каким-то образом определить номер нижней строки, отображаемой на экране при текущем масштабе, а с этим у меня тоже возникают проблемы..

Автор - 0beorn
Дата добавления - 02.10.2014 в 14:37
EvgenyD Дата: Четверг, 02.10.2014, 14:42 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
0beorn, самому было интересно разобраться, попробовал через API. Только еще учесть как-то панель задач, если ее высота не изменяется в зависимости от разрешения экрана, то просто в коде вычесть это число. Посмотрите, может мой вариант подойдет?
К сообщению приложен файл: 9409948.xlsm (14.9 Kb)
 
Ответить
Сообщение0beorn, самому было интересно разобраться, попробовал через API. Только еще учесть как-то панель задач, если ее высота не изменяется в зависимости от разрешения экрана, то просто в коде вычесть это число. Посмотрите, может мой вариант подойдет?

Автор - EvgenyD
Дата добавления - 02.10.2014 в 14:42
0beorn Дата: Четверг, 02.10.2014, 14:55 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: -5 ±
Замечаний: 0% ±

Excel 2010
Круто!
Я про API знаю чуть больше чем ничего, так что, без вас до такого никогда бы не добрался!)
Не хочу показаться придирчивым, но, к сожалению, в данном варианте привязка идет к экрану а не к окну Excel, так если окно окажется неразвернутым, или если у вас два монитора - получится довольно нелепо..=/
 
Ответить
СообщениеКруто!
Я про API знаю чуть больше чем ничего, так что, без вас до такого никогда бы не добрался!)
Не хочу показаться придирчивым, но, к сожалению, в данном варианте привязка идет к экрану а не к окну Excel, так если окно окажется неразвернутым, или если у вас два монитора - получится довольно нелепо..=/

Автор - 0beorn
Дата добавления - 02.10.2014 в 14:55
EvgenyD Дата: Четверг, 02.10.2014, 21:00 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
0beorn, Я по началу не понял. Подумал что нужно позиционирование не зависящее вообще не от чего. Если к окну Excel то попробуйте так (приложенный файл). Потестируйте. Я не знаток (только начал VBA изучать), так что лучше проверьте работоспособность тщательно в т.ч. на совместимость версий ПО (на эту тему про API не в курсе).
К сообщению приложен файл: 4575452.xlsm (16.2 Kb)
 
Ответить
Сообщение0beorn, Я по началу не понял. Подумал что нужно позиционирование не зависящее вообще не от чего. Если к окну Excel то попробуйте так (приложенный файл). Потестируйте. Я не знаток (только начал VBA изучать), так что лучше проверьте работоспособность тщательно в т.ч. на совместимость версий ПО (на эту тему про API не в курсе).

Автор - EvgenyD
Дата добавления - 02.10.2014 в 21:00
0beorn Дата: Пятница, 03.10.2014, 09:59 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: -5 ±
Замечаний: 0% ±

Excel 2010
Да, данный код не будет работать на 64-разрядной системе. В этом случае декларирование функций немного меняется на:
[vba]
Код
Declare PtrSafe Function
[/vba]
Сам в vba (как и вообще в программировании) начал копаться совсем недавно и до API еще не добрался.
Спасибо! Теперь все работает!=)
 
Ответить
СообщениеДа, данный код не будет работать на 64-разрядной системе. В этом случае декларирование функций немного меняется на:
[vba]
Код
Declare PtrSafe Function
[/vba]
Сам в vba (как и вообще в программировании) начал копаться совсем недавно и до API еще не добрался.
Спасибо! Теперь все работает!=)

Автор - 0beorn
Дата добавления - 03.10.2014 в 09:59
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Расположение Userform на экране (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!