Текущее время: Пт, июл 18 2025, 23:33

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


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

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


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

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