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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.03.2007, 17:19   #1  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2480 (88) +++++++++
Регистрация: 20.08.2005
А тут, как раз таки, надо воспользоваться COMDispFunction
X++:
    Com sheet;
    Com Range;
    COMDispFunction f;
    str s;

    COMVariant varArg1 = new COMVariant();
    COMVariant varArg2 = new COMVariant();
    COMVariant varArg3 = new COMVariant();
    COMVariant varArg4 = new COMVariant();
    COMVariant varArg5 = COMVariant::createNoValue();
    COMVariant varRet  = new COMVariant(COMVariantInOut::OUT_RETVAL, ComVariantType::VT_ERROR);
;
    Range = sheet.range("D10:AK258");
    s = Range.Address(true, true, -4150);
    info(s);

    f  = new COMDispFunction(app, "ConvertFormula", ComDispContext::Method);
    varArg1.bStr(s);
    varArg2.int(-4150);
    varArg3.int(1);
    varArg4.int(1);
    f.call(varArg1, varArg2, varArg3, varArg4, varArg5, varRet);
    info(varRet.bStr());
__________________
Axapta v.3.0 sp5 kr2
Старый 30.03.2007, 18:37   #2  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Хм... а у меня как-то просто через COMVariant всё получилось..
X++:
static void Job_TestExcelConvertFormula(Args _args)
{
    COM         xlApp; // Excel.Application
    COMVariant  cv;
    ;

    xlApp = new COM('Excel.Application');

    cv = xlApp.ConvertFormula('$A$1:$B$20', 1, -4150);
    info(cv.bStr()); // R1C1:R20C2

    cv = xlApp.ConvertFormula('R1C1:R20C2', -4150, 1);
    info(cv.bStr()); // $A$1:$B$20
}
За это сообщение автора поблагодарили: gl00mie (5).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Построчный импорт из Excel через COM olesh DAX: Программирование 20 23.10.2008 14:01
Ошибка COM-объекта longson DAX: Программирование 15 21.04.2008 13:03
Ошибка com 0x800A9C68 NetBus DAX: Программирование 2 12.09.2007 17:52
Работа с Excel через COM в DAX 4.0 Paul_ST DAX: Программирование 4 17.07.2007 16:45
DLL (BarCode) через COM Antant DAX: Программирование 4 04.02.2007 16:02

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

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

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