Текущее время: Вс, июл 27 2025, 17:08

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Цветные строки в ексель!
СообщениеДобавлено: Чт, ноя 20 2008, 12:49 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
Сделал выгрузку в ексель.
Все как то однотонно. Хотелось бы у шапки один цвет у сумм другой????
Заранее благодарю!!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 13:03 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Через OLE можно так, к примеру.
Code:
DATA: GS_INTERIOR TYPE OLE2_OBJECT.
GET PROPERTY OF GS_CELL 'Interior' = GS_INTERIOR .
SET PROPERTY OF GS_INTERIOR 'ColorIndex' = 38.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 13:04 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
А как конкретно какой то строке присваивать определенный цвет???


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 13:07 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
посмотрите как это делается на VBA и тоже самое проделайте на абап используя OLE2

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 13:08 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Zhasulan написал:
А как конкретно какой то строке присваивать определенный цвет???
http://msdn.microsoft.com или читайте встроенную справку к VB

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 14:35 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
Что то ничего полезного не вычитал?? :oops: :oops:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 14:58 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
ну так например
Code:
 
CALL METHOD OF excel_SHEET 'rows' = excel_ROW NO FLUSH
                                                EXPORTING #1 = Row.

  If BackGround between 1 and 56.     
    call method of excel_ROW 'Interior' = excel_variable2.
    SET PROPERTY OF excel_variable2 'ColorIndex' = BackGround NO FLUSH.
  endif.

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 15:42 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Code:
FORM add_top.
  html-line = '<HTML>'.
  append html.
  html-line = '<HEAD>'.
  append html.
  html-line = '<META http-equiv="content-type" content="text/html; charset=windows-1251">'.
  append html.
  html-line = '<STYLE type = "text/css" >'.
  append html.
  html-line = 'TABLE { width: 100%; border-collapse: collapse; cellpadding: 0px; cellspacing: 0px; }'.
  append html.
  " Заголовки ячейки без акантовки линиями --- БЕ # Имя отчёта # Дата отчета ------------------------------------------------------------
  html-line = '.Glava_Bukrs      {ALIGN:Center; Color:#0033cc; font-size:12.0pt; font-family:Arial;}'.
  append html.
  html-line = '.Glava_NameReport {ALIGN:Center; Color:#ff0000; font-size:12.0pt; font-family:Arial;}'.
  append html.
  html-line = '.Glava_Date       {ALIGN:Center; Color:#black;  font-size:10.0pt; font-family:Arial;}'.
  append html.
  " Заголовок ячейки шапки документа ----------------------------------------------------------------------------------------------------
  html-line = '.Heder_doc        {ALIGN:Center; Background:#A6CAF0; font-size:10.0pt; font-family:Arial; border:0.10pt solid black;}'.
  append html.
  " Строки документа  -------------------------------------------------------------------------------------------------------------------
  html-line = '.Lines_doc        {Background:#ffffff; Font-size:10.0pt; font-family:Arial; border:0.10pt solid darkgray; mso-number-format:"@";}'.
  append html.
  " Суммы документа ---------------------------------------------------------------------------------------------------------------------
  html-line = '.Sum_doc_n        {ALIGN:Right; Background:#ffffcc; font-size:10.0pt; font-family:Arial; border:0.10pt solid black; mso-number-format:"@";}'.
  append html.
  html-line = '.Sum_doc_p        {ALIGN:Right; Background:#ffff99; font-size:10.0pt; font-family:Arial; border:0.10pt solid black; mso-number-format:"@"; mso-spacerun:yes;}'.
  append html.
  html-line = '.Sum_doc_f        {ALIGN:Right; Background:#ffcc00; font-size:10.0pt; font-family:Arial; border:0.10pt solid black; mso-number-format:"@"; mso-spacerun:yes;}'.
  append html.
  html-line = '</STYLE>'.
  append html.
  html-line = '</HEAD>'.
  append html.
ENDFORM.

FORM Xls_Print. " Печать в xls

  FREE : Html , TAB_XLS.
  TAB_XLS[] = TAB_ALV[].

  PERFORM add_top. " Добавляем стиль
  Concatenate '<title>'t001-butxt'</title>' into html-line. Append html. CLEAR Html.

  html-line = '<BODY><TABLE>'. APPEND : html . Clear html .

  Concatenate '<TH CLASS=Glava_Bukrs COLSPAN=6> Открытое акционерное общество "' T001-butxt '"</TH>'
              '<TR> <TH class=Glava_NameReport COLSPAN=6 > Валовые доходы </TH>' ''
              '<TR> <TH class=Glava_Date COLSPAN=6 >' head_alv '</TH>'
  into html-line . Append html. Clear html.

  CONCATENATE '<TR><TH class=Heder_doc ROWSPAN=2>' ' Стр.декл. ' '</TH>'
                  '<TH class=Heder_doc ROWSPAN=2>' ' Наименование дохода. ' '</TH>'
                  '<TH class=Heder_doc ROWSPAN=2>' ' Группа. ' '</TH>'
                  '<TH class=Heder_doc ROWSPAN=2>' ' Оборот по дебету. ' '</TH>'
                  '<TH class=Heder_doc ROWSPAN=2>' ' Оборот по кредиту. ' '</TH>'
                  '<TH class=Heder_doc ROWSPAN=2>' ' Сумма ' '</TH>'
              '<TR>'
  Into html-line .
  Append Html. Clear Html.

  DATA : LINE_DMBTR(17)    TYPE c VALUE 0.
  DATA : Sum_SUM_DMBTR(17) TYPE c VALUE 0.
  DATA : Sum_GRP_DMBTR(17) TYPE c VALUE 0.
  DATA : ALL_SUM_DMBTR     LIKE TAB_ITOG-DMBTR.
  DATA : IT_SUM_DMBTR(17)  TYPE c VALUE 0.

  sort TAB_XLS by deklar GRPVD.
  LOOP AT TAB_XLS INTO WA_TAB_XLS.
    WRITE WA_TAB_XLS-DMBTR  TO LINE_DMBTR NO-ZERO.

    CONCATENATE '<TR>' '<TD class=Lines_doc ALIGN=center>' WA_TAB_XLS-deklar '</TD>'
                       '<TD class=Lines_Doc ALIGN=Left>  ' WA_TAB_XLS-doxnm  '</TD>'
                       '<TD class=Lines_Doc ALIGN=Left>  ' WA_TAB_XLS-GRPVD  '</TD>'
                       '<TD class=Lines_Doc ALIGN=center>' WA_TAB_XLS-DEBET  '</TD>'
                       '<TD class=Lines_Doc ALIGN=center>' WA_TAB_XLS-KREDIT '</TD>'
                       '<TD class=Lines_doc ALIGN=right> ' LINE_DMBTR '</TD>'
    INTO html-line .
    APPEND html. CLEAR html.

    AT END OF GRPVD.
       SUM.
       WRITE WA_TAB_XLS-DMBTR TO Sum_GRP_DMBTR NO-ZERO.

      CONCATENATE '<TR> <TD class=Sum_doc_n COLSPAN=5  >   Итого: по' WA_TAB_XLS-GRPVD ' </TD>'
                       '<TH class=Sum_doc_n ALIGN=right> ' Sum_GRP_DMBTR '</TD>'
      INTO html-line SEPARATED BY ' '.  APPEND html.
      CLEAR : html , Sum_GRP_DMBTR .
    ENDAT.

    AT END OF deklar.
       SUM.
       WRITE WA_TAB_XLS-DMBTR TO Sum_SUM_DMBTR NO-ZERO.

      CONCATENATE '<TR> <TD class=Sum_doc_p COLSPAN=5 >Итого:' WA_TAB_XLS-deklar '</TD>'
                       '<TH class=Sum_doc_p ALIGN=right>' Sum_SUM_DMBTR '</TD>'
      INTO html-line SEPARATED BY ' '. APPEND html.
      CLEAR : html , Sum_SUM_DMBTR .
    ENDAT.

    ALL_SUM_DMBTR = ALL_SUM_DMBTR + WA_TAB_XLS-DMBTR.
  ENDLOOP.
    WRITE ALL_SUM_DMBTR TO IT_SUM_DMBTR NO-ZERO.
    CONCATENATE '<TR> <TD class=Sum_doc_f COLSPAN=5 >  Итого: </TD>'
                     '<TH class=Sum_doc_f ALIGN=right> ' IT_SUM_DMBTR  '</TD>'
                INTO html-line . APPEND html. CLEAR html.
    APPEND html. CLEAR : html , ALL_SUM_DMBTR.

    html-line = '</BODY></HTML>'. APPEND : html . Clear html .
*********************************************************************************************************
  DATA: PATH(255) TYPE C , TXT TYPE String.
  CALL FUNCTION 'IW_C_GET_SAPWORKDIR'
    IMPORTING
      SAPWORKDIR = PATH.

    CASE PR .
      WHEN 'X'.
        CONCATENATE PATH '\sap_doc.xls' INTO TXT .
      WHEN 'D'.
        CONCATENATE PATH '\sap_doc.html' INTO TXT .
    ENDCASE.
*** Выгрузка в XLS *****************************************

  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      FILENAME = TXT
    TABLES
      DATA_TAB = html.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  CALL FUNCTION 'WS_EXECUTE'
    EXPORTING
      PROGRAM = TXT.
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM. "Xls


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 20 2008, 15:45 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Zhasulan написал:
Что то ничего полезного не вычитал?? :oops: :oops:
А вы пробовали?
=====================
Code:
Color Property

Returns or sets the primary color of the object, as shown in the following table. Use the RGB function to create a color value. Read/write Variant.

Object Color
Border The color of the border.
Borders The color of all four borders of a range. If they're not all the same color, Color returns 0 (zero).
Font The color of the font.
Interior The cell shading color or the drawing object fill color.
expression.Color
expression    Required. An expression that returns one of the objects in the Applies To list.

Example
This example sets the color of the tick-mark labels on the value axis in Chart1.

Charts("Chart1").Axes(xlValue).TickLabels.Font.Color = _
    RGB(0, 255, 0)
      

=====================

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, ноя 21 2008, 16:47 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, июн 16 2005, 10:29
Сообщения: 336
Откуда: Минск->Москва
Пол: Мужской
А может все же DOI и вот в помощь описалово http://help.sap.com/saphelp_nw04/helpdata/en/21/b531d4e1ba11d2bdbe080009b4534c/frameset.htm


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 24 2008, 07:38 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
Вот так работает, спасибо!!
Code:
CALL METHOD OF excel_SHEET 'rows' = excel_ROW NO FLUSH
                                                EXPORTING #1 = Row.

  If BackGround between 1 and 56.     
    call method of excel_ROW 'Interior' = excel_variable2.
    SET PROPERTY OF excel_variable2 'ColorIndex' = BackGround NO FLUSH.
  endif.


Но как красить не сколько строк, попробовал
#1 = row
#2 = row1
не срабатывает?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 24 2008, 07:56 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Zhasulan написал:
Вот так работает, спасибо!!
Code:
CALL METHOD OF excel_SHEET 'rows' = excel_ROW NO FLUSH
                                                EXPORTING #1 = Row.

  If BackGround between 1 and 56.     
    call method of excel_ROW 'Interior' = excel_variable2.
    SET PROPERTY OF excel_variable2 'ColorIndex' = BackGround NO FLUSH.
  endif.


Но как красить не сколько строк, попробовал
#1 = row
#2 = row1
не срабатывает?


оформить это ввиде формы и вызывать несколько раз но думаю IMHO лучше вам закрашивать Range чем целую строку так будет красивее

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 24 2008, 08:27 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
Сделал так
Code:
EXPORTING #1 = '10:15'.

Закрашивает с 10 по 15 строку.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 24 2008, 08:30 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Zhasulan написал:
Сделал так
Code:
EXPORTING #1 = '10:15'.

Закрашивает с 10 по 15 строку.

ну поздравляю :D

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 24 2008, 09:33 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, июл 29 2008, 16:07
Сообщения: 351
Откуда: Astana
Пол: Мужской
Спасибо огромное за помощь....!!!


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

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


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

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


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

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