powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: как встроить шрифт?
14 сообщений из 14, страница 1 из 1
Excel: как встроить шрифт?
    #36914567
777777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, пожалуйста, можно ли в Excel встроить шрифт. Т.е. сохраненный файл с шрифтом, не установленным на компьютере, открывался с этим шрифтом, а не с установленным по умолчанию. Если да, прошу помощи, как это сделать.
Если нет, есть ли альтернативные средства установки шрифта через макрос и удаления после выхода из файла екселя.
Спасибо.
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #36924710
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Word есть опция "Внедрить шрифты в файл", а в Excel в тех-же пунктах меню что-то не нашёл, может и нет.
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #36924763
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде как можно установить на компьютер шрифт и он будет доступен в любой программе:

Пуск–Панель управления (или Пуск–Настройка–Панель управления)-Шрифты. Выбераете в меню окна Файл–Установить шрифт.
Только вот пока не пробовал установить автоматом, а потом удалить. Удалить-то можно тупо удалив сам файл шрифта, а вот установить...Кажись можно через API:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Declare Function AddFontResource& Lib "gdi32" Alias "AddFontResourceA" (ByVal lpFileName As String)

Sub Add_Font()
    Dim sMyFont As String
    sMyFont = "MyFont.ttf"
    If Dir("C:\WINDOWS\Fonts\" & sMyFont) = "" Then
        'Копируем шрифт в систему
        FileCopy ThisWorkbook.Path & "\" & sMyFont, "C:\WINDOWS\Fonts\" & sMyFont
        'Устанавливаем шрифт
        AddFontResource sMyFont
    End If
End Sub
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #36925053
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно достаточно файл шрифта закинуть в папку %WINDIR%\Fonts
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Excel: как встроить шрифт?
    #37811030
Триада
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Установить любой шрифт нет проблем. Но как быть если файл Exel'я содержит каталог, который нужно пересылать, а у принимающих лиц нет этого этого шрифта на компьютере. Пересылать вместе с каталогом шрифт еще не так страшно, как просить его установить, чтобы у них все красиво открывалось. Неужели нет никакого встраивания шрифтов?
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #37812128
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том, что Excel - изначально калькулятор, а не репортер, поэтому "красивости" ему ни к чему. Если вы формируете выходную форму прямо в Excel - значит, вы что-то недодумали
Поэтому простых вариантов два - либо пересылать шрифт вместе с книгой, и устанавливать шрифт при открытии книги; либо делать выходные формы, например, в Word на основе шаблонов, в которые нужный шрифт встроен...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Excel: как встроить шрифт?
    #38422121
GlooBus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTMДело в том, что Excel - изначально калькулятор, а не репортер, поэтому "красивости" ему ни к чему. Если вы формируете выходную форму прямо в Excel - значит, вы что-то недодумали
Поэтому простых вариантов два - либо пересылать шрифт вместе с книгой, и устанавливать шрифт при открытии книги; либо делать выходные формы, например, в Word на основе шаблонов, в которые нужный шрифт встроен...
Я буду с вами не согласиться! У меня к примеру задача в эксельной форме выводить баркод, который должен иметь особый шрифт что бы рисовать эти самые штрихи. Данные тянутся в эксель, вордом воспользоваться не выйдет.
Остается проверить возможность встаивания шрифта в кристал репортс
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38707842
eFcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем здравствуйте, поднимука тему.
Задача почти таже.
Шрифт баркод.
У пользователя стоит запрет на установку шрифтов (права админа и тп). Даже если есть возможность таскать файл шрифта с собой, как его использовать не устанавливая в систему?
Уже месяц в инете роюсь ничего толкового не нашел, остается только надежда на коллективный разум форума)).
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38708030
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eFcan,

Никак. Если запрет стоит на уровне системы ничего не сделать изнутри.
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38708557
RAN.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно, поможет FonTemp - временная установка шрифтов.
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38711836
eFcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RAN., Прям большущие спасибо, действительно похоже это единственный вариант, но он работает. Еще раз благодарю.
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38712674
eFcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел как

' вставить в модуль.
Public Declare Function AddFontResource Lib "gdi32" _
Alias "AddFontResourceA" _
(ByVal lpFileName As String) As Long

Public Declare Function RemoveFontResource Lib "gdi32" _
Alias "RemoveFontResourceA" _
(ByVal lpFileName As String) As Long

Public Declare Function SendMessage Lib "user32" _
Alias "SendMessageA" _
(ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any) As Long

Public Const WM_FONTCHANGE = &H1D
Public Const HWND_BROADCAST = &HFFFF


ExpandedWrap disabled
' Код для формы
Private Sub cmd_LoadFont_Click()
' настройка для эл-та Label (для примера)
lbabel_1.Caption = "123456789"
lbabel_1.Font.Size = "36"
ok = AddFontResourceEx(App.Path & "\MyFont.TTF")
If ok = 0 Then
' Если 0 шрифтов удалось загрузить в таблицу, далее обработка ошибок или кому как угодно.
Exit Sub
End If
'Ниже ok должен быть >0, иначе ... свои действия

спасибо сюда http://bit.pirit.info/forum/viewtopic.php?p=23259
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38712676
eFcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
eFcan, только за место AddFontResourceEx -> AddFontResource
...
Рейтинг: 0 / 0
Excel: как встроить шрифт?
    #38712678
eFcan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Щас поэксперементировал у меня сработала вот такая конструкция

ok = AddFontResource("C:\temp\barcode.ttf")
MsgBox ok
SendMessage HWND_BROADCAST, WM_FONTCHANGE, 0, 0
om = AddFontResource("C:\temp\ean13.ttf")
MsgBox om
Call SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0)
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel: как встроить шрифт?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]