Текущее время: Сб, июл 19 2025, 12:23

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Форматироие в Excel
СообщениеДобавлено: Пт, апр 06 2012, 10:13 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, апр 06 2012, 10:00
Сообщения: 63
Добрый день.
Возникла проблема - необходлимо сделать шаблон в экселе. Достаточно сложный (в том смысле, что нужно разделять таблицы, форматировать разные строки по разному, отслеживать конец страницы и т.д. Вопрос в следующем: делается всё через OLE. Шустренько выгружаются данные, но вот проблема - перед тем, как вставлять данные должно пройти форматирование. Которое идёт следующим образом - копируется "эталонная строка" (одна из трёх) и копируется туда, где она должна быть. В 2003-м экселе работает в лёт, а вот в 2007-м - операции проходят, но вот результата нет. То есть процедура форматирования отрабатывает - но шаблон не меняется. После чего отрабатывает процедура выгрузки данных - и данные выгружаются нормально.

Вот код копирования строк. Может кто чего доброго теплого вечного подскажет?

Code:
FORM    row_insert USING row TYPE any row_type TYPE any.

  DATA: first_row TYPE i.

  CASE row_type.
    WHEN 'S'.
      first_row = 3.
    WHEN 'H'.
      first_row = 4.
    WHEN 'I'.
      first_row = 5.
  ENDCASE.

  IF NOT no_flush IS INITIAL.
    CALL METHOD OF
        sheet
        'ROWS' = rows
      EXPORTING
        #1     = first_row.
    CALL METHOD OF
        rows
        'SELECT' = select.
    CALL METHOD OF
        rows
        'COPY' = copy.

    CALL METHOD OF
        sheet
        'ROWS' = rows
      EXPORTING
        #1     = row.
    CALL METHOD OF
        rows
        'SELECT' = select.
    CALL METHOD OF
        rows
        'INSERT' = insert.

  ELSE.
    CALL METHOD OF
        sheet
        'ROWS' = rows
        NO
        FLUSH

      EXPORTING
        #1     = first_row.

    CALL METHOD OF
        rows
        'SELECT' = select
        NO
        FLUSH.

    CALL METHOD OF
        rows
        'COPY' = copy
        NO
        FLUSH.

    CALL METHOD OF
        sheet
        'ROWS' = rows
        NO
        FLUSH

      EXPORTING
        #1     = row.

    CALL METHOD OF
        rows
        'SELECT' = select
        NO
        FLUSH.

    CALL METHOD OF
        rows
        'INSERT' = insert
        NO
        FLUSH.

  ENDIF.
  FREE OBJECT rows NO FLUSH.
ENDFORM.                   


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Форматироие в Excel
СообщениеДобавлено: Пт, апр 06 2012, 10:52 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
если правильно вас понял, копировать формат так:
Code:
        Rows(i).Copy
        Rows(j).PasteSpecial (xlPasteFormats)
        Rows(j).EntireRow.AutoFit


я бы сделал 1 шаблон, выгрузить его и затем удалить ненужное


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Форматироие в Excel
СообщениеДобавлено: Пт, апр 06 2012, 11:39 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, апр 06 2012, 10:00
Сообщения: 63
попробую.

А удалять в моём случае - не вариант


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

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


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

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


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

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