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

Вход

Регистрация

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

 

= Мир MS Excel/Создание иконок на кнопках формы - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Создание иконок на кнопках формы (Макросы/Sub)
Создание иконок на кнопках формы
varan Дата: Понедельник, 27.10.2014, 14:38 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Можно ли на кнопках Формы создать слева иконки. Как при этом использовать коды FaceId


Усердный в службе не должен бояться своего незнания, ибо каждое новое дело он прочтет
 
Ответить
СообщениеМожно ли на кнопках Формы создать слева иконки. Как при этом использовать коды FaceId

Автор - varan
Дата добавления - 27.10.2014 в 14:38
Alex_ST Дата: Понедельник, 27.10.2014, 16:00 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Как вытащить имеющиеся стандартные FaceID для того, чтобы использовать их как картинки кнопок в XML-тексте для Ribbon-интерфейса, я показывал ЗДЕСЬ
А вот какие FaceID назначаются собственным картинкам-иконкам, когда-то разобрался, но сейчас не помню :(



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеКак вытащить имеющиеся стандартные FaceID для того, чтобы использовать их как картинки кнопок в XML-тексте для Ribbon-интерфейса, я показывал ЗДЕСЬ
А вот какие FaceID назначаются собственным картинкам-иконкам, когда-то разобрался, но сейчас не помню :(

Автор - Alex_ST
Дата добавления - 27.10.2014 в 16:00
AndreTM Дата: Понедельник, 27.10.2014, 16:18 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
У MSForms.CommandButton нет свойства .FaceID. Так что напрямую использовать "встроенные иконки на кнопках" не выйдет.

Но вы, при желании, можете выгрузить (или найти) нужные вам иконки, а затем просто наложить на кнопку как рисунок.
И даже в этом случае есть тонкости: если использовать .Picture самой кнопки, то происходят изменения размеров иконки (они привязываются к линейным размерам кнопки и надписи), а если наложить иконку как рисунок поверх кнопки - то надо писать отдельный класс или именовать контролы так, чтобы не потерять "связки". Можно, конечно, создать кнопки-рисунки (сделать Image кнопкой), но там тоже надо возиться со .SpesialEffect и т.п.


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеУ MSForms.CommandButton нет свойства .FaceID. Так что напрямую использовать "встроенные иконки на кнопках" не выйдет.

Но вы, при желании, можете выгрузить (или найти) нужные вам иконки, а затем просто наложить на кнопку как рисунок.
И даже в этом случае есть тонкости: если использовать .Picture самой кнопки, то происходят изменения размеров иконки (они привязываются к линейным размерам кнопки и надписи), а если наложить иконку как рисунок поверх кнопки - то надо писать отдельный класс или именовать контролы так, чтобы не потерять "связки". Можно, конечно, создать кнопки-рисунки (сделать Image кнопкой), но там тоже надо возиться со .SpesialEffect и т.п.

Автор - AndreTM
Дата добавления - 27.10.2014 в 16:18
parovoznik Дата: Вторник, 28.10.2014, 16:43 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 442
Репутация: 26 ±
Замечаний: 0% ±

Excel 2013
На сайте планета Excel была тема где-то в марте месяце .Высылаю файл может подойдет я сейчас пользуюсь
 
Ответить
СообщениеНа сайте планета Excel была тема где-то в марте месяце .Высылаю файл может подойдет я сейчас пользуюсь

Автор - parovoznik
Дата добавления - 28.10.2014 в 16:43
parovoznik Дата: Вторник, 28.10.2014, 16:44 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 442
Репутация: 26 ±
Замечаний: 0% ±

Excel 2013
Вот файл
К сообщению приложен файл: Face_ID__.rar (51.9 Kb)
 
Ответить
СообщениеВот файл

Автор - parovoznik
Дата добавления - 28.10.2014 в 16:44
vkbond Дата: Воскресенье, 15.01.2017, 12:16 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Вот на мой взгляд удачный вариант:
http://dedusenko.at.ua
 
Ответить
СообщениеВот на мой взгляд удачный вариант:
http://dedusenko.at.ua

Автор - vkbond
Дата добавления - 15.01.2017 в 12:16
bmv98rus Дата: Воскресенье, 15.01.2017, 12:33 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4107
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
AndreTM,

Тут вроде рецепт без выгрузки, но я не проверял.
[vba]
Код
    With CommandButton1
        .PicturePosition = fmPicturePositionLeftCenter
        .Picture = Application.CommandBars.FindControl(ID:=18).Picture
    End With
    With Label1
        .PicturePosition = fmPicturePositionLeftCenter
        .Picture = Application.CommandBars.FindControl(ID:=4).Picture
        .TextAlign = fmTextAlignLeft
    End With
[/vba]

А вот проверил и естественно это не по FaceID :-( . значит как то искуственно сперва создать контрол, перелить иконку и удалить контрол
[vba]
Код
Private Sub test()
    With CommandButton1
        .PicturePosition = fmPicturePositionLeftCenter
        With Application.CommandBars("cell").Controls _
            .Add(Type:=msoControlButton, temporary:=True)
            .FaceID = 613
            CommandButton1.Picture = .Picture
            .delete
        End With
    End With
End Sub
[/vba]

Что-то не выходит функцию сделать, возвращающую картику по FaceID.

Тормозил SET в Set GetPictureByFaceID = .Picture забыл
[vba]
Код
Private Sub test2()
    With CommandButton1
        .PicturePosition = PicturePositionLeftCenter
        .Picture = GetPictureByFaceID(128)
    End With
End Sub

Function GetPictureByFaceID(FaceID) As Object
    With Application.CommandBars("cell").Controls _
            .Add(Type:=msoControlButton, temporary:=True)
            .FaceID = FaceID
            Set GetPictureByFaceID = .Picture
            .Delete
        End With
End Function
[/vba]


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Воскресенье, 15.01.2017, 14:35
 
Ответить
СообщениеAndreTM,

Тут вроде рецепт без выгрузки, но я не проверял.
[vba]
Код
    With CommandButton1
        .PicturePosition = fmPicturePositionLeftCenter
        .Picture = Application.CommandBars.FindControl(ID:=18).Picture
    End With
    With Label1
        .PicturePosition = fmPicturePositionLeftCenter
        .Picture = Application.CommandBars.FindControl(ID:=4).Picture
        .TextAlign = fmTextAlignLeft
    End With
[/vba]

А вот проверил и естественно это не по FaceID :-( . значит как то искуственно сперва создать контрол, перелить иконку и удалить контрол
[vba]
Код
Private Sub test()
    With CommandButton1
        .PicturePosition = fmPicturePositionLeftCenter
        With Application.CommandBars("cell").Controls _
            .Add(Type:=msoControlButton, temporary:=True)
            .FaceID = 613
            CommandButton1.Picture = .Picture
            .delete
        End With
    End With
End Sub
[/vba]

Что-то не выходит функцию сделать, возвращающую картику по FaceID.

Тормозил SET в Set GetPictureByFaceID = .Picture забыл
[vba]
Код
Private Sub test2()
    With CommandButton1
        .PicturePosition = PicturePositionLeftCenter
        .Picture = GetPictureByFaceID(128)
    End With
End Sub

Function GetPictureByFaceID(FaceID) As Object
    With Application.CommandBars("cell").Controls _
            .Add(Type:=msoControlButton, temporary:=True)
            .FaceID = FaceID
            Set GetPictureByFaceID = .Picture
            .Delete
        End With
End Function
[/vba]

Автор - bmv98rus
Дата добавления - 15.01.2017 в 12:33
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Создание иконок на кнопках формы (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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