AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.09.2006, 13:36   #1  
tnv is offline
tnv
Участник
 
9 / 10 (1) +
Регистрация: 22.09.2003
Выравнивание ячейки в excel
Подскажите, пожалуйста, какой метод написать в следующем куске кода Х++

Com excel = new COM("OWC.Spreadsheet");
COM RANGE;
COM CURSHEET = NEW COM();
COM BORDER,BORDERS, cell,cells, font;
#Define.xlRight(-4152)
;
curSheet = excel.ActiveSheet();

Cells = cursheet.Cells();
Cell = Cells.Range("P6");
//cell.HorizontalAlignmentt(#xlRight);
cell.value(num2str(44.67,10,2,2,0));

Нужно ячейку сформатировать по горизонтали по правому краю.
Попыталась использовать cell.HorizontalAlignmentt(#xlRight);
Нельзя.
Старый 11.09.2006, 10:16   #2  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Вот вариант решения задачи:
В классе ComExcelDocument_RU пишем функцию
PHP код:
public void horAligment(BookMark _bookMarkint _aligmentint _workSheet 1)
{
   
COM         XLSWorkSheetXLSrangeselection;
 ;

   
// Initializing XLSWorkSheet object
   
XLSWorkSheet    this.getWorkSheet(_workSheet);
   if (!
XLSWorkSheet)
       throw 
error("@DIS6043");

   
// Initializing XLSRange object
   
XLSrange        this.findRange(_bookMark);
   if (!
XLSrange)
       throw 
error("@SYS27391");

    
XLSrange.HorizontalAlignment(_aligment);

Вызываем так
PHP код:
    excelDocument = new ComExcelDocument_RU();
    
excelDocument.newFile(''true);
    
excelDocument.horAligment("A1", -4152); 
За это сообщение автора поблагодарили: kvg6 (1).
Старый 11.09.2006, 10:42   #3  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
человеку вроде не Excel, а OWC.Spreadsheet нужен...

tnv, на какой строке ругается, что говорит? какая версия OWC.Spreadsheet? в 9-й (Office 2000) вроде свойство называется HAlignment, a HorizontalAlignment там еще нет...

Пример из хелпа
Цитата:
HAlignment Property Example
This example centers the values in the range A1:F1.
Spreadsheet1.Range("a1:f1").HAlignment = c.ssHAlignCenter
Константы из хелпа
Цитата:
SheetHAlignEnum Constants
Constant Value
ssHAlignGeneral 0
ssHAlignLeft 1
ssHAlignCenter 2
ssHAlignRight 3
Всё для 9-й версии. Для других возможны отличия. Надо смотреть в хелпе конкретной версии.


Если же Вам всё же нужен Excel (Вы уж определитесь! ), то замените
Com excel = new COM("OWC.Spreadsheet");
на
Com excel = new COM("Excel.Application");
и будет щастье Вам (не забудьте только про замену Value на Value2)

Последний раз редактировалось Gustav; 11.09.2006 в 11:25.
Старый 11.09.2006, 10:51   #4  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от Gustav Посмотреть сообщение
человеку вроде не Excel, а OWC.Spreadsheet нужен...
Извиняюсь... недосмотрел.
Старый 11.09.2006, 10:52   #5  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,309 / 3546 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Хм.... не смотрел хелп - смотрел - как у нас в коде... и там другие константы (правда это для OWC)
PHP код:
int         hAlign;
#define.xlHAlignLeft(-4131)
#define.xlHAlignCenter(-4108)
#define.xlHAlignRight(-4152)
;
hAlign #xlHAlignRight;
cell.HorizontalAlignment(COMVariant::createFromInt(hAlign)); 
__________________
Возможно сделать все. Вопрос времени
Старый 11.09.2006, 11:13   #6  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от sukhanchik Посмотреть сообщение
Хм.... не смотрел хелп - смотрел - как у нас в коде... и там другие константы (правда это для OWC)
PHP код:
int         hAlign;
#define.xlHAlignLeft(-4131)
#define.xlHAlignCenter(-4108)
#define.xlHAlignRight(-4152)
;
hAlign #xlHAlignRight;
cell.HorizontalAlignment(COMVariant::createFromInt(hAlign)); 
Всё так и есть. Начиная с 10-й версии. Я ткнулся в самую старую из имеющихся у себя - 9-ю. Там действительно только HAlignment, а HorizontalAlignment начинается с 10-й. Поэтому tnv и должен нам рассказать подробнее, чего же он хочет на самом деле и какая у него версия, если все же речь идет об OWC
Старый 11.09.2006, 11:38   #7  
tnv is offline
tnv
Участник
 
9 / 10 (1) +
Регистрация: 22.09.2003
Да, речь идет о OWC.Spreadsheet
Старый 11.09.2006, 13:29   #8  
tnv is offline
tnv
Участник
 
9 / 10 (1) +
Регистрация: 22.09.2003
Извините, забыла поблагодарить всех. Все получилось. Спасибо.
Старый 11.09.2006, 13:59   #9  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от tnv Посмотреть сообщение
Извините, забыла поблагодарить всех. Все получилось. Спасибо.
А рассказать? Ну и в чём загвоздка была?
Старый 27.09.2006, 14:36   #10  
tnv is offline
tnv
Участник
 
9 / 10 (1) +
Регистрация: 22.09.2003
Так нужно было писать HAlignment, как мне и подсказали.
Старый 27.09.2006, 14:48   #11  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от tnv Посмотреть сообщение
Так нужно было писать HAlignment, как мне и подсказали.
Спасибо.
Цитата:
Сообщение от Gustav Посмотреть сообщение
Поэтому tnv и должен нам рассказать подробнее, чего же он хочет на самом деле и какая у него версия, если все же речь идет об OWC
И извините, что "назвал даму сэром"
Теги
spreadsheet

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент) Gustav DAX: База знаний и проекты 79 13.02.2014 13:18
Как изменить формат ячейки в EXCEL demon46 DAX: Программирование 21 27.01.2010 11:29
[Excel] - Несколько версий Excel на машине клиента Андре DAX: Программирование 11 07.08.2007 13:45
Чтение Excel-ячейки в Аксапте (2.5) через COM AKIS DAX: Программирование 3 25.03.2004 20:18
Ячейки Excel YVAS DAX: Программирование 2 05.08.2003 10:00

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:00.