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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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