|
![]() |
#1 |
Участник
|
По такому принципу пытаюсь переделать форматирование шрифта в ячейке, который был написан так:
X++: void bold(MSOfficeBookMark_RU _bookMark, int _workSheet = 1) { Com MultiRange; Com ComApplication; Com Font; ; if (m_comDocument) { comApplication = m_comDocument.application(); if (comApplication) { MultiRange = this.findRange(_bookMark, _workSheet); Font = MultiRange.Font(); Font.Bold(1); } } } При написании такой конструкции X++: funcGet = new ComDispFunction(Font, "Bold", COMDispContext::PropertyGet); varRet = new COMVariant(COMVariantInOut::OUT_RETVAL, COMVariantType::VT_DISPATCH); varArgInt = new COMVariant(COMVariantInOut::In, COMVariantType::VT_INT); varArgInt.int(1); funcGet.call(varArgInt); //-------------- //Font.Bold(1); -------------------- Метод "Bold" в COM-объекте класса "Font" возвратил код ошибки 0x8002000E (DISP_E_BADPARAMCOUNT), который означает: Число аргументов, указанных в вызове функции, отличается от числа аргументов в объявлении метода. -------------------- При вызове без аргументов funcGet.call(); работает отлично. Каким образом сделать шрифт болдом?
__________________
Ален ноби, ностра алис. Что означает - если один человек построил, другой завсегда разобрать может. |
|
|
За это сообщение автора поблагодарили: NeveB (1). |
Теги |
com-объект, comdispfunction, excel, excel com формат, законченный пример, полезное |
|
|