Текущее время: Вт, июл 29 2025, 17:25

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: изменение ширины столбца при выводе данных в Excel
СообщениеДобавлено: Пн, окт 13 2008, 12:23 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 16 2008, 21:08
Сообщения: 76
Есть подпрограмма вывода данных в Excel:
Code:
DATA: H_EXCEL TYPE OLE2_OBJECT,        " Excel object
          H_ZL TYPE OLE2_OBJECT,              " cell
          H_F TYPE OLE2_OBJECT.                " font

FORM FILL_CELL USING I J BOLD VAL.
  CALL METHOD OF H_EXCEL 'Cells' = H_ZL EXPORTING #1 = I #2 = J.
  SET PROPERTY OF H_ZL 'Value' = VAL .
  GET PROPERTY OF H_ZL 'Font' = H_F.
  SET PROPERTY OF H_F 'Bold' = BOLD .
ENDFORM.


Подскажите пожалуйста,как сделать в этой подпрограмме так, чтобы если данные в ячейке больше размера ячейки, то столбец принимал бы соответствующую ширину.


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

Зарегистрирован:
Ср, мар 28 2007, 11:02
Сообщения: 132
Откуда: SPb
Я пользуюсь разработкой Parazit'a и делаю такие штуки VB макросами. Поищи на этом форуме по zwww - это наверное самый популярный топик.
Да, если не хочется переходить на его разработку :roll:, то можно подсмотреть в исходниках как макрос запустить :wink:

_________________
С уважением, СашОК.


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

Зарегистрирован:
Пн, апр 17 2006, 21:49
Сообщения: 299
Откуда: Москва
а макрос можно запустить вот так

Code:
DATA:
  excel_application   TYPE ole2_object.

FORM excel_macro_run
  USING
    i_name.

  CALL METHOD OF excel_application 'RUN'
    EXPORTING
    #1 = i_name.

  IF sy-subrc NE 0.
    sy-subrc = 4.
    EXIT.
  ENDIF.

ENDFORM.             


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, окт 13 2008, 19:23 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
Пример:

Code:
data: obj_column  type ole2_object.

call method of obj_excel 'COLUMNS' = obj_column
       exporting #1 = 16.
set property of obj_column 'ColumnWidth' = 25.


Здесь 25 - это ширина колонки, а 16, если не ошибаюсь (давно дело было), порядковый номер.

_________________
"One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." Bertrand Russell


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

Зарегистрирован:
Пн, апр 17 2006, 21:49
Сообщения: 299
Откуда: Москва
Цитата:
Пример:

Код:
data: obj_column type ole2_object.

call method of obj_excel 'COLUMNS' = obj_column
exporting #1 = 16.
set property of obj_column 'ColumnWidth' = 25.


Здесь 25 - это ширина колонки, а 16, если не ошибаюсь (давно дело было), порядковый номер.

Так мне кажется будут трудности с определением необходимой ширины.
Можно сделать вот так:

Code:
*заполнение значения ячейки
*.....
****************************
DATA: my_column TYPE OLE2_OBJECT.
CALL METHOD OF H_EXCEL 'Columns' = my_column
    EXPORTING
    #1 = 1.   "номер столбца
CALL METHOD OF my_column 'AutoFit' .


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

Зарегистрирован:
Ср, янв 16 2008, 21:08
Сообщения: 76
bossjohn написал(а):


Code:
*заполнение значения ячейки
*.....
****************************
DATA: my_column TYPE OLE2_OBJECT.
CALL METHOD OF H_EXCEL 'Columns' = my_column
    EXPORTING
    #1 = 1.   "номер столбца
CALL METHOD OF my_column 'AutoFit' .


Спасибо большое!
Все оказалось даже лучше, чем я сам себе мог представить!


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

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


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

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


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

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