Здравствуйте! Подскажите, плиз, возможно ли программно сделать так, чтобы форма VBA и все Label, кнопки и прочее при запуске макроса автоматически подстраивалась под размер экрана монитора? Спасибо.
Здравствуйте! Подскажите, плиз, возможно ли программно сделать так, чтобы форма VBA и все Label, кнопки и прочее при запуске макроса автоматически подстраивалась под размер экрана монитора? Спасибо.Shimaruka
Да это с планеты повтор. Там приведён макрос, позволяющий свою картинку выводить при загрузке. Теперь нам предлагают сбегать туда, найти и подкорректировать .
Да это с планеты повтор. Там приведён макрос, позволяющий свою картинку выводить при загрузке. Теперь нам предлагают сбегать туда, найти и подкорректировать .Udik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
К сожалению, файл получается больше 100 кб и загрузить здесь его не могу. Этот код создавался на большом мониторе, офис 2010 и размер UserForm был выбран соответственно этому монитору. Теперь я запускаю код на планшете десятке и часть формы вылезает за край экрана. На планшете Офис тот же 2010, система Windows 8. Можно, конечно, в коде вручную установить размер формы, но наверняка это можно сделать и программно.
К сожалению, файл получается больше 100 кб и загрузить здесь его не могу. Этот код создавался на большом мониторе, офис 2010 и размер UserForm был выбран соответственно этому монитору. Теперь я запускаю код на планшете десятке и часть формы вылезает за край экрана. На планшете Офис тот же 2010, система Windows 8. Можно, конечно, в коде вручную установить размер формы, но наверняка это можно сделать и программно.Shimaruka
Так сделайте файл с простенькой формой, приведите код и спросите как программно растянуть на весь экран. Под свои нужды уже сами переделаете. Можно даже без кода, главное файл формой приложите.
Так сделайте файл с простенькой формой, приведите код и спросите как программно растянуть на весь экран. Под свои нужды уже сами переделаете. Можно даже без кода, главное файл формой приложите.Udik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
Сообщение отредактировал Udik - Воскресенье, 20.03.2016, 20:26
Option Explicit Public FormIsOn As Boolean Public Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Public Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long Public Declare Function GetDesktopWindow Lib "user32" () As Long Public Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As RECT) As Long
Public Function ScreenWidth() As Single Dim R As RECT GetWindowRect GetDesktopWindow(), R ScreenWidth = RRight '* Screen.TwipsPerPixelX End Function
Public Function ScreenHeight() As Single Dim R As RECT GetWindowRect GetDesktopWindow(), R ScreenHeight = R.Bottom * Screen.TwipsPerPixelY End Function
Sub test() Dim x As Integer, y As Integer x = GetSystemMetrics(0) y = GetSystemMetrics(1) MsgBox "Ширина экрана:" & x & " : " & y End Sub
[/vba]
Тут без api наверное никак .[vba]
Код
Option Explicit Public FormIsOn As Boolean Public Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Public Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long Public Declare Function GetDesktopWindow Lib "user32" () As Long Public Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As RECT) As Long
Public Function ScreenWidth() As Single Dim R As RECT GetWindowRect GetDesktopWindow(), R ScreenWidth = RRight '* Screen.TwipsPerPixelX End Function
Public Function ScreenHeight() As Single Dim R As RECT GetWindowRect GetDesktopWindow(), R ScreenHeight = R.Bottom * Screen.TwipsPerPixelY End Function
Sub test() Dim x As Integer, y As Integer x = GetSystemMetrics(0) y = GetSystemMetrics(1) MsgBox "Ширина экрана:" & x & " : " & y End Sub