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

Вход

Регистрация

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

 

= Мир MS Excel/Как обратиться к объектам на UserForm через переменную - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как обратиться к объектам на UserForm через переменную (Макросы/Sub)
Как обратиться к объектам на UserForm через переменную
Sancho Дата: Вторник, 24.04.2018, 14:56 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 279
Репутация: 19 ±
Замечаний: 0% ±

2007, 2010, 2013
Всем доброго дня!
Подскажите пожалуйста (туплю) как обратиться к объектам на UserForm через переменную. На UserForm предполагается куча кнопок, нужно им при адаптации к разрешению экрана задать одинаковые свойства. Как, не могу найти. [vba]
Код

For xx = 1 To 4
    With UserForm1.ToggleButton(xx)
        .Width = 160 * Kx
        .Height = 70 * Ky
        .Font.Size = 11 * Ky
    End With
Next xx
[/vba]
К сообщению приложен файл: 121212.xlsm (17.1 Kb)
 
Ответить
СообщениеВсем доброго дня!
Подскажите пожалуйста (туплю) как обратиться к объектам на UserForm через переменную. На UserForm предполагается куча кнопок, нужно им при адаптации к разрешению экрана задать одинаковые свойства. Как, не могу найти. [vba]
Код

For xx = 1 To 4
    With UserForm1.ToggleButton(xx)
        .Width = 160 * Kx
        .Height = 70 * Ky
        .Font.Size = 11 * Ky
    End With
Next xx
[/vba]

Автор - Sancho
Дата добавления - 24.04.2018 в 14:56
Апострофф Дата: Вторник, 24.04.2018, 15:33 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 445
Репутация: 123 ±
Замечаний: 0% ±

Excel 1997
Например так -
[vba]
Код
For xx = 1 To 4

    With UserForm1.Controls("ToggleButton" & xx)
        .Width = 160 * Kx
        .Height = 70 * Ky
        .Font.Size = 11 * Ky
    End With
Next xx
[/vba]
 
Ответить
СообщениеНапример так -
[vba]
Код
For xx = 1 To 4

    With UserForm1.Controls("ToggleButton" & xx)
        .Width = 160 * Kx
        .Height = 70 * Ky
        .Font.Size = 11 * Ky
    End With
Next xx
[/vba]

Автор - Апострофф
Дата добавления - 24.04.2018 в 15:33
Sancho Дата: Вторник, 24.04.2018, 15:50 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 279
Репутация: 19 ±
Замечаний: 0% ±

2007, 2010, 2013
Апострофф, спасибо! Заработало!
 
Ответить
СообщениеАпострофф, спасибо! Заработало!

Автор - Sancho
Дата добавления - 24.04.2018 в 15:50
_Boroda_ Дата: Вторник, 24.04.2018, 15:54 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Sancho, обратите внимание еще на то, что Ваш код может быть запущен и на машине 64 бита. Поэтому вместо первой строки запишите вот так
[vba]
Код
#If Win64 Then
    Private Declare PtrSafe Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
#Else
    Private Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
#End If
[/vba]
На красноту (если будет) внимания не обращайте


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеSancho, обратите внимание еще на то, что Ваш код может быть запущен и на машине 64 бита. Поэтому вместо первой строки запишите вот так
[vba]
Код
#If Win64 Then
    Private Declare PtrSafe Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
#Else
    Private Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
#End If
[/vba]
На красноту (если будет) внимания не обращайте

Автор - _Boroda_
Дата добавления - 24.04.2018 в 15:54
Sancho Дата: Вторник, 24.04.2018, 16:01 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 279
Репутация: 19 ±
Замечаний: 0% ±

2007, 2010, 2013
_Boroda_, спасибо за подсказку!
 
Ответить
Сообщение_Boroda_, спасибо за подсказку!

Автор - Sancho
Дата добавления - 24.04.2018 в 16:01
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как обратиться к объектам на UserForm через переменную (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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