2016-01-22 2 views
1

У меня есть следующая проблема. Я хотел бы скрыть пользовательскую форму для работы с данными на листе.Скрыть пользовательскую форму в VBA для работы с данными

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

Есть ли у кого-нибудь опыт с чем-то подобным?

ответ

7

Вы можете использовать me.hide, чтобы скрыть пользовательскую форму, сохранив все значения, внесенные в форму. Используйте me.show, чтобы вернуть форму пользователя на экран.

Это отличное от unload me, которое выгружает пользовательскую форму из памяти, уничтожая все введенные значения. Вызов формы снова запустит новую форму.

Если вы хотите, чтобы форма была по-прежнему видимой и позволяла пользователю взаимодействовать с рабочим листом позади, тогда установите для свойства ShowModal значение False .. Значение по умолчанию - True.

+1

Спасибо, я раньше не работал с ShowModal - действительно полезен! Awsome! Спасибо – HeadOverFeet

+3

Хороший ответ: и вот дополнительный совет для проектирования процессов, который включает перескок между рабочим листом и формой - рассмотрите возможность написания процедур или макросов в листе данных, которые обнаруживают завершение задачи (или ошибки данных) и возвращают пользовательскую форму на видимость (или обратно в фокусе, если он не модальный) со следующей кнопкой или селектором списка в процессе, выделенным и готовым к использованию. Но, пожалуйста, убедитесь, что вы не совершаете раздражающий интерфейс «украсть фокус», который мешает чему-то другому вводить пользователя. –

+0

спасибо за советы @Nile. Вы правы, в то время как автоматизация хороша для пользователей, важно также учитывать «дружелюбие». – Rosetta

Смежные вопросы