Текущее время: Пн, июл 21 2025, 19:15

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: OLE2 Excel Разный шрифт в одной ячейке
СообщениеДобавлено: Пт, апр 06 2007, 12:15 
Начинающий
Начинающий

Зарегистрирован:
Пт, апр 06 2007, 11:54
Сообщения: 17
Как работать со шрифтом всей ячейки Excel известно.
Подскажите как средствами ABAP (OLE) внутри одной ячейки Excel сделать часть текста жирным, а другую часть не жирным.
На VBA это выглядит примерно так
Code:
Range("D3").Select
    ActiveCell.FormulaR1C1 = "HELP HELP HELP"
    With ActiveCell.Characters(Start:=1, Length:=4).Font
         .FontStyle = "полужирный"
    End With
    With ActiveCell.Characters(Start:=5, Length:=14).Font
         .FontStyle = "обычный"
    End With


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 06 2007, 14:38 
Специалист
Специалист

Зарегистрирован:
Пт, июн 16 2006, 11:39
Сообщения: 178
Откуда: Москва
А что мешает сделать то же на абапе ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 06 2007, 15:25 
Начинающий
Начинающий

Зарегистрирован:
Пт, апр 06 2007, 11:54
Сообщения: 17
А как это ABAP-ом сделать?

Пока я использую макрос с параметрами,
Code:
Sub Макрос1(P1 As Integer, P2 As Integer, P3 As Integer, P4 As Integer)
    With ActiveCell.Characters(Start:=P1, Length:=P2).Font
        .Name = "Arial Cyr"
        .FontStyle = "обычный"
    End With
    With ActiveCell.Characters(Start:=P3, Length:=P4).Font
        .FontStyle = "полужирный"
    End With
End Sub

который запускаю ABAP-ом.
Code:
CALL METHOD OF H_EXCEL 'Run' EXPORTING #1 = 'Макрос2' #2 = 1 #3 = 4 #4 = 7 #5 = 14.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 06 2007, 17:42 
Специалист
Специалист

Зарегистрирован:
Пт, июн 16 2006, 11:39
Сообщения: 178
Откуда: Москва
Что-то типа такого:
Code:
DATA: ACTIVECELL TYPE OLE2_OBJECT.
DATA: FONT TYPE OLE2_OBJECT.
DATA: CHARACTERS TYPE OLE2_OBJECT.

CALL METHOD OF H_EXCEL 'ActiveCell' = ACTIVECELL.

CALL METHOD OF ACTIVECELL 'Characters' = CHARACTERS
        EXPORTING #1 = 1
                          #2 = 4.

CALL METHOD OF CHARACTERS 'Font' = FONT.
SET PROPERTY OF FONT 'FontStyle' = 'полужирный'.
...
CALL METHOD OF ACTIVECELL 'Characters' = CHARACTERS
        EXPORTING #1 = 5
                          #2 = 14.

CALL METHOD OF CHARACTERS 'Font' = FONT.
SET PROPERTY OF FONT 'FontStyle' = 'обычный'.

...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, апр 07 2007, 11:59 
Начинающий
Начинающий

Зарегистрирован:
Пт, апр 06 2007, 11:54
Сообщения: 17
Спасибо. Получилось.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 20:43 
Начинающий
Начинающий

Зарегистрирован:
Пт, апр 06 2007, 11:54
Сообщения: 17
Аналогично можно сделать шрифт разным в одной ячейке используя
Code:
  SET PROPERTY OF H_FONT 'Strikethrough' = 1 .  "зачёркнутый
  SET PROPERTY OF H_FONT 'Superscript' = 1 .    "надстрочный
* SET PROPERTY OF H_FONT 'Subscript' = 1 .      "подстрочный

Но пользователи хотят именно подчёркивание.
Макросом сделать можно так:
Code:
Sub Макрос1(P1 As Integer, P2 As Integer, P3 As Integer, P4 As Integer)
    With ActiveCell.Characters(Start:=P1, Length:=P2).Font
        .Underline = xlUnderlineStyleNone
    End With
    With ActiveCell.Characters(Start:=P3, Length:=P4).Font
        .Underline = xlUnderlineStyleSingle
    End With
End Sub


Подскажите пжлста как ABAP-ом подчёркивать часть символов в ячейке?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 08:50 
Специалист
Специалист

Зарегистрирован:
Пт, июн 16 2006, 11:39
Сообщения: 178
Откуда: Москва
Code:
constants: xlUnderlineStyleSingle TYPE i VALUE 2.
* Значение xlUnderlineStyleSingle ищем в VBA
...
SET PROPERTY OF font 'Underline' = xlUnderlineStyleSingle.
...



Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB