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

Вход

Регистрация

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

 

= Мир MS Excel/Код формы - делает ее невидимой. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Код формы - делает ее невидимой. (Макросы/Sub)
Код формы - делает ее невидимой.
Lizard Дата: Воскресенье, 12.05.2019, 17:33 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Всем доброго дня.

У меня в книге есть форма.
В ее коде есть фрагмент:
[vba]
Код

Private Sub UserForm_Initialize()

  Dim ihWnd, iStyle
  ihWnd = FindWindow(vbNullString, Me.Caption)
  iStyle = GetWindowLong(ihWnd, -16&)
  SetWindowLong ihWnd, -16&, iStyle And Not &HC00000
  DrawMenuBar ihWnd
  ' Восстановить положение формы
  On Error Resume Next
  Me.StartUpPosition = 0
  Me.Left = [MyForm.Left1]
  Me.Top = [MyForm.Top1]
  Picture_Form1.Picture = LoadPicture([MyForm.Pict1])

End Sub
[/vba]
Этот код по идее - должен обрезать заголовок формы.
Но почему-то именно из-за этого фрагмента - форма делается невидимой.
Хотя раньше почему-то та же самая форма - была видимой.

Ответьте, если кто знает - что надо поменять в этом фрагменте кода формы, чтобы он все-таки не мешал делать форму видимой ?
К сообщению приложен файл: 6574568.xlsb (67.7 Kb)


Сообщение отредактировал Lizard - Воскресенье, 12.05.2019, 17:34
 
Ответить
СообщениеВсем доброго дня.

У меня в книге есть форма.
В ее коде есть фрагмент:
[vba]
Код

Private Sub UserForm_Initialize()

  Dim ihWnd, iStyle
  ihWnd = FindWindow(vbNullString, Me.Caption)
  iStyle = GetWindowLong(ihWnd, -16&)
  SetWindowLong ihWnd, -16&, iStyle And Not &HC00000
  DrawMenuBar ihWnd
  ' Восстановить положение формы
  On Error Resume Next
  Me.StartUpPosition = 0
  Me.Left = [MyForm.Left1]
  Me.Top = [MyForm.Top1]
  Picture_Form1.Picture = LoadPicture([MyForm.Pict1])

End Sub
[/vba]
Этот код по идее - должен обрезать заголовок формы.
Но почему-то именно из-за этого фрагмента - форма делается невидимой.
Хотя раньше почему-то та же самая форма - была видимой.

Ответьте, если кто знает - что надо поменять в этом фрагменте кода формы, чтобы он все-таки не мешал делать форму видимой ?

Автор - Lizard
Дата добавления - 12.05.2019 в 17:33
doober Дата: Воскресенье, 12.05.2019, 21:06 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация: 323 ±
Замечаний: 0% ±

Excel 2010
Код не мешает.
Посмотрите чему равен
[MyForm.Left1] и [MyForm.Top1] .
Форма за пределами монитора находится.
Замените Me.Top = [MyForm.Top1] на Me.Top = [MyForm.TopX1]




Сообщение отредактировал doober - Воскресенье, 12.05.2019, 22:02
 
Ответить
СообщениеКод не мешает.
Посмотрите чему равен
[MyForm.Left1] и [MyForm.Top1] .
Форма за пределами монитора находится.
Замените Me.Top = [MyForm.Top1] на Me.Top = [MyForm.TopX1]

Автор - doober
Дата добавления - 12.05.2019 в 21:06
Lizard Дата: Понедельник, 13.05.2019, 18:27 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
doober, понятно.
Спасибо за дельный совет.
 
Ответить
Сообщениеdoober, понятно.
Спасибо за дельный совет.

Автор - Lizard
Дата добавления - 13.05.2019 в 18:27
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Код формы - делает ее невидимой. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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