Текущее время: Пн, июл 28 2025, 22:44

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


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

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


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

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