Снова вопросы

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Сообщение m0p3e »

!!!Макросы - зло!!!

В матрицу писать можно через
xlStWriteToMatrix - строка
xlDoWriteToMatrix - число
в 8.1 появилась:
xlDtWriteToMatrix - дата

galover
Спрашивай про конкретную функцию - расскажу как работает :)
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Сообщение Max_Fin »

ExcelFun.Inc

Код: Выделить всё

/*
 ╔═══════════════════════════════════════════════════════════════════════════╗
 ║                     (c) 1994,2002 корпорация ГАЛАКТИКА                    ║
 ║ Система       : ГАЛАКТИКА                                                 ║
 ║ Проект        : Финансовый контур                                         ║
 ║ Версия        : 5.84                                                      ║
 ║ Назначение    : Внешние процедуры и функции из RegExcel.dll               ║
 ║ Ответственный :                                                           ║
 ╚═══════════════════════════════════════════════════════════════════════════╝
*/

#ifndef ATL51
//------------------------------------------------------------------------------
// если не 3x-уровневая архитектура
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
// RegFunc.pas (Все остальное напрямую из ExcelLib.dll)
//------------------------------------------------------------------------------
Function XLOPENEXCEL(boolean) : boolean; external 'ExcelLib.dll';
Function XLOPENNEWEXCEL(boolean) : boolean; external 'ExcelLib.dll';
Function XLCREATEEXCEL(string, boolean) : boolean; external 'ExcelLib.dll';
Function XLCREATEEXCELWITHTEMPLATE(string, boolean) : boolean; external 'ExcelLib.dll';
Function XLISEXCELVALID : boolean; external 'ExcelLib.dll';

Function XLGETLASTERROR : LongInt; external 'ExcelLib.dll';
Function XLDISPLAYALERTS(boolean) : boolean; external 'ExcelLib.dll';
Function XLSETAPPVISIBLEMODE(boolean) : boolean; external 'ExcelLib.dll';

Function XLOPENWORKBOOK(string) : boolean; external 'ExcelLib.dll';
Function XLSAVEWORKBOOK(LongInt) : boolean; external 'ExcelLib.dll';
Function XLSAVEASWORKBOOK(LongInt, string) : boolean; external 'ExcelLib.dll';
Function XLCLOSEWORKBOOK(LongInt) : boolean; external 'ExcelLib.dll';
Function XLSAVEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib.dll';
Function XLSAVEASWORKBOOKBYNAME(string, string) : boolean; external 'ExcelLib.dll';
Function XLCLOSEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLGETWORKBOOKSCOUNT(var anytype) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------

Function XLSETACTIVEWORKBOOK(word) : boolean; external 'ExcelLib.dll';
Function XLSETACTIVEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLGETACTIVEWORKBOOKNAME(var string) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
Function XLGETRANGENAMESCOUNT(var anytype) : boolean; external 'RegExcel.dll';
Function XLGETINDNAME(string) : LongInt; external 'ExcelLib.dll';
Function XLDELRANGEBYNAME(string) : boolean; external 'ExcelLib.dll';
Function XLDELRANGENAME(LongInt) : boolean; external 'ExcelLib.dll';
Function XLADDRANGENAME(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETRANGENAME(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLGETRANGEBYNAME(string, var longint, var longint, var longint, var longint) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------
Function XLGETRANGENAMESCOUNTINBOOK(var anytype) : boolean; external 'RegExcel.dll';
Function XLGETINDNAMEINBOOK(string) : LongInt; external 'ExcelLib.dll';
Function XLDELRANGENAMEINBOOK(LongInt) : boolean; external 'ExcelLib.dll';
Function XLDELRANGEBYNAMEINBOOK(string) : boolean; external 'ExcelLib.dll';
Function XLADDRANGENAMEINBOOK(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETRANGENAMEINBOOK(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLGETRANGEBYNAMEINBOOK(string, var longint, var longint, var longint, var longint) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------

Function XLSETFONTSIZE(word, longint, longint, longint, longint): boolean; external 'ExcelLib.dll';
Function XLSETCELLSTRINGVALUE(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETCELLNUMBERVALUE(double, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETCELLDATEVALUE(date, longint, longint, longint, longint) : boolean; external 'RegExcel.dll';
Function XLSETCELLFORMULA(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';

//------------------------------------------------------------------------------
Function XLGETCELLVALUE(longint, longint, var anytype) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------

Function XLSETCELLINDENTLEVEL(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLFREEZE(longint, longint) : boolean; external 'ExcelLib.dll';
Function XLUNFREEZE : boolean; external 'ExcelLib.dll';
Function XLSETROWHEIGHT(word, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETCOLUMNWIDTH(word, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETFONTCOLOR(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSETBACKCOLOR(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// по битикам Bold, Italic, Underline
Function XLSETFONTSTYLE(word, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// 1-ый параметер куду вставляем (см. Excel.inc)
Function XLINSERTRANGE(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLDELETERANGE(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLSHRINKCELLS(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// 1-ый align (см. Excel.inc)
Function XLALIGNCELLS(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLALIGNCELLSEX(longint, longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLMERGECELLS(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// 1-ый строка с форматом, надо учитывать текущие системные разделители
Function XLSETNUMBERFORMAT(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLCLEARRANGECONTENTS(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLCLEARRANGEFORMATS(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLCLEARRANGECOMMENTS(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// 1-ый где фрейм, по битикам в порядке следования констант (Excel.inc); 2-ой вес линии; 3-ий стиль линии (все Excel.inc)
Function XLFRAMECELLS(word, longint, longint, longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLADDCOMMENTSHORT(string, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLAUTOFIT(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLGETUSEDRANGE(var longint, var longint, var longint, var longint) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------
Function XLWRAPTEXT(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// работа с буффером Excel
Function XLCOPYTOBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLPASTEFORMATFROMBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLPASTEALLFROMBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';
// работа с листом рабочей книги Excel
Function XLSETACTIVESHEET(LongInt) : boolean; external 'ExcelLib.dll';
Function XLSETACTIVESHEETBYNAME(string) : boolean; external 'ExcelLib.dll';
Function XLSETSHEETNAME(LongInt, string) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLGETSHEETNAME(LongInt, var anytype) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------
Function XLADDSHEET : boolean; external 'ExcelLib.dll';
Function XLDELETESHEET(LongInt) : boolean; external 'ExcelLib.dll';
Function XLDELETESHEETBYNAME(string) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLGETSHEETSCOUNT(var anytype) : boolean; external 'RegExcel.dll';

//------------------------------------------------------------------------------
Function XLCOPYEXTFORMAT(string, string) : boolean; external 'ExcelLib.dll';
Function XLRUNMACRO(string) : boolean; external 'ExcelLib.dll';
Function XLADDINSINSTAL(string, string) : boolean; external 'ExcelLib.dll';
// имя файла в который предварительно записаны макросы
Function XLIMPORTMODULE(string) : boolean; external 'ExcelLib.dll';

//------------------------------------------------------------------------------
// работа с сепараторами Excel_XP, для 97, 2000 возвращает системные
Function XLGETUSESYSTEMSEPARATOR : boolean;  external 'ExcelLib.dll';
Function XLGETTHOUSANDSEPARATOR  : char;     external 'ExcelLib.dll';
Function XLGETDECIMALSEPARATOR   : char;     external 'ExcelLib.dll';

//------------------------------------------------------------------------------
// секция работы с вариантным массивом
Function XLCREATEMATRIX(longint, longint) : boolean; external 'ExcelLib.dll';
Function XLCLEARMATRIX : boolean; external 'ExcelLib.dll';
Function XLFREEMATRIX : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'RegExcel.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'RegExcel.dll';
Function XLDTWRITETOMATRIX(longint, longint, date) : boolean; external 'RegExcel.dll';
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------
Function XLWRITEMATRIXTOEXCEL(longint, longint) : boolean; external 'ExcelLib.dll';
Function XLREADMATRIXFROMEXCEL(longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';

//------------------------------------------------------------------------------
// секция работы с коллекцией вариантных массивов
Function XLCREATEMATRIXEX(longint, longint) : longint; external 'ExcelLib.dll';
Function XLCLEARMATRIXEX(longint) : boolean; external 'ExcelLib.dll';
Function XLFREEMATRIXEX(longint) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
Function XLSTWRITETOMATRIXEX(longint, longint, longint, string) : boolean; external 'RegExcel.dll';
Function XLDOWRITETOMATRIXEX(longint, longint, longint, double) : boolean; external 'RegExcel.dll';
Function XLDTWRITETOMATRIXEX(longint, longint, longint, date) : boolean; external 'RegExcel.dll';
Function XLREADFROMMATRIXEX(longint, longint, var AnyType) : boolean; external 'RegExcel.dll';
//------------------------------------------------------------------------------
Function XLWRITEMATRIXTOEXCELEX(longint, longint, longint) : boolean; external 'ExcelLib.dll';
Function XLREADMATRIXFROMEXCELEX(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib.dll';

Function XLKILLEXCEL : boolean; external 'ExcelLib.dll';
Function SHORTSTRTOWIN(string) : string; external 'ExcelLib.dll';
Function SHORTSTRTODOS(string) : string; external 'ExcelLib.dll';
Function GETTHOUSANDSEPARATOR : char; external 'ExcelLib.dll';
Function GETDECIMALSEPARATOR : char; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
// вспомогательные для page setup
// перевод сантиметров в точки
Function XLCENTIMETERSTOPOINTS(double) : double; external 'ExcelLib.dll';
// перевод дюймов в точки
Function XLINCHESTOPOINTS(double) : double; external 'ExcelLib.dll';
//------------------------------------------------------------------------------
// page setup
// функции XLPAGESETUP*
// все аргументы XLPAGESETUPSET...MARGIN(double) в точках (points) !!!
// см. Function XLCENTIMETERSTOPOINTS()
Function XLPAGESETUPSETLEFTMARGIN(double) : boolean; external 'ExcelLib.dll';
Function XLPAGESETUPSETRIGHTMARGIN(double) : boolean; external 'ExcelLib.dll';
Function XLPAGESETUPSETTOPMARGIN(double) : boolean; external 'ExcelLib.dll';
Function XLPAGESETUPSETBOTTOMMARGIN(double) : boolean; external 'ExcelLib.dll';
Function XLPAGESETUPSETHEADERMARGIN(double) : boolean; external 'ExcelLib.dll';
Function XLPAGESETUPSETFOOTERMARGIN(double) : boolean; external 'ExcelLib.dll';
// параметр: xlPortrait, xlLandscape - см. Excel.inc
Function XLPAGESETUPSETORIENTATION(longint) : boolean; external 'ExcelLib.dll';
// параметр: xlPaperXXX (xlPaperA4 для A4) - см. Excel.inc
// Учитывайте, что принтеры обычно не поддерживают весь список типов !!!
Function XLPAGESETUPSETPAPERSIZE(longint) : boolean; external 'ExcelLib.dll';
//------------------------------------------------------------------------------

#else //ifndef ATL51
//------------------------------------------------------------------------------
// если 3x-уровневая архитектура
//------------------------------------------------------------------------------

Function XLOPENEXCEL(boolean) : boolean; external 'ExcelLib3X.dll';
Function XLOPENNEWEXCEL(boolean) : boolean; external 'ExcelLib3X.dll';
Function XLCREATEEXCEL(string, boolean) : boolean; external 'ExcelLib3X.dll';
Function XLCREATEEXCELWITHTEMPLATE(string, boolean) : boolean; external 'ExcelLib3X.dll';
Function XLISEXCELVALID : boolean; external 'ExcelLib3X.dll';

Function XLGETLASTERROR : LongInt; external 'ExcelLib3X.dll';
Function XLDISPLAYALERTS(boolean) : boolean; external 'ExcelLib3X.dll';
Function XLSETAPPVISIBLEMODE(boolean) : boolean; external 'ExcelLib3X.dll';

Function XLOPENWORKBOOK(string) : boolean; external 'ExcelLib3X.dll';
Function XLSAVEWORKBOOK(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLSAVEASWORKBOOK(LongInt, string) : boolean; external 'ExcelLib3X.dll';
Function XLCLOSEWORKBOOK(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLSAVEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib3X.dll';
Function XLSAVEASWORKBOOKBYNAME(string, string) : boolean; external 'ExcelLib3X.dll';
Function XLCLOSEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETWORKBOOKSCOUNT(var anytype) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------

Function XLSETACTIVEWORKBOOK(word) : boolean; external 'ExcelLib3X.dll';
Function XLSETACTIVEWORKBOOKBYNAME(string) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETACTIVEWORKBOOKNAME(var string) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------

Function XLGETRANGENAMESCOUNT(var anytype) : boolean; external 'ExcelLib3X.dll';
Function XLGETINDNAME(string) : LongInt; external 'ExcelLib3X.dll';
Function XLDELRANGEBYNAME(string) : boolean; external 'ExcelLib3X.dll';
Function XLDELRANGENAME(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLADDRANGENAME(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETRANGENAME(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLGETRANGEBYNAME(string, var longint, var longint, var longint, var longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETRANGENAMESCOUNTINBOOK(var anytype) : boolean; external 'ExcelLib3X.dll';
Function XLGETINDNAMEINBOOK(string) : LongInt; external 'ExcelLib3X.dll';
Function XLDELRANGEBYNAMEINBOOK(string) : boolean; external 'ExcelLib3X.dll';
Function XLDELRANGENAMEINBOOK(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLADDRANGENAMEINBOOK(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETRANGENAMEINBOOK(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLGETRANGEBYNAMEINBOOK(string, var longint, var longint, var longint, var longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------

Function XLSETFONTSIZE(word, longint, longint, longint, longint): boolean; external 'ExcelLib3X.dll';
Function XLSETCELLSTRINGVALUE(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETCELLNUMBERVALUE(double, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETCELLDATEVALUE(date, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETCELLFORMULA(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';

//------------------------------------------------------------------------------
Function XLGETCELLVALUE(longint, longint, var anytype) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------

Function XLSETCELLINDENTLEVEL(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLFREEZE(longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLUNFREEZE : boolean; external 'ExcelLib3X.dll';
Function XLSETROWHEIGHT(word, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETCOLUMNWIDTH(word, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETFONTCOLOR(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSETBACKCOLOR(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// по битикам Bold, Italic, Underline
Function XLSETFONTSTYLE(word, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// 1-ый параметер куду вставляем (см. Excel.inc)
Function XLINSERTRANGE(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLDELETERANGE(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLSHRINKCELLS(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// 1-ый align (см. Excel.inc)
Function XLALIGNCELLS(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLALIGNCELLSEX(longint, longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLMERGECELLS(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// 1-ый строка с форматом, надо учитывать текущие системные разделители
Function XLSETNUMBERFORMAT(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLCLEARRANGECONTENTS(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLCLEARRANGEFORMATS(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLCLEARRANGECOMMENTS(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// 1-ый где фрейм, по битикам в порядке следования констант (Excel.inc); 2-ой вес линии; 3-ий стиль линии (все Excel.inc)
Function XLFRAMECELLS(word, longint, longint, longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLADDCOMMENTSHORT(string, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLAUTOFIT(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETUSEDRANGE(var longint, var longint, var longint, var longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLWRAPTEXT(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// работа с буффером Excel
Function XLCOPYTOBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLPASTEFORMATFROMBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLPASTEALLFROMBUFF(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
// работа с листом рабочей книги Excel
Function XLSETACTIVESHEET(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLSETACTIVESHEETBYNAME(string) : boolean; external 'ExcelLib3X.dll';
Function XLSETSHEETNAME(LongInt, string) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETSHEETNAME(LongInt, var anytype) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLADDSHEET : boolean; external 'ExcelLib3X.dll';
Function XLDELETESHEET(LongInt) : boolean; external 'ExcelLib3X.dll';
Function XLDELETESHEETBYNAME(string) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLGETSHEETSCOUNT(var anytype) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLCOPYEXTFORMAT(string, string) : boolean; external 'ExcelLib3X.dll';
Function XLRUNMACRO(string) : boolean; external 'ExcelLib3X.dll';
Function XLADDINSINSTAL(string, string) : boolean; external 'ExcelLib3X.dll';

// имя файла в который предварительно записаны макросы
Function XLIMPORTMODULE(string) : boolean; external 'ExcelLib3X.dll';

//------------------------------------------------------------------------------
// работа с сепараторами Excel_XP, для 97, 2000 возвращает системные
Function XLGETUSESYSTEMSEPARATOR : boolean;  external 'ExcelLib3X.dll';
Function XLGETTHOUSANDSEPARATOR  : char;     external 'ExcelLib3X.dll';
Function XLGETDECIMALSEPARATOR   : char;     external 'ExcelLib3X.dll';

// секция работы с вариантным массивом
Function XLCREATEMATRIX(longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLCLEARMATRIX : boolean; external 'ExcelLib3X.dll';
Function XLFREEMATRIX : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'ExcelLib3X.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'ExcelLib3X.dll';
Function XLDTWRITETOMATRIX(longint, longint, date) : boolean; external 'ExcelLib3X.dll';
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLWRITEMATRIXTOEXCEL(longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLREADMATRIXFROMEXCEL(longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';

// секция работы с коллекцией вариантных массивов
Function XLCREATEMATRIXEX(longint, longint) : longint; external 'ExcelLib3X.dll';
Function XLCLEARMATRIXEX(longint) : boolean; external 'ExcelLib3X.dll';
Function XLFREEMATRIXEX(longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLSTWRITETOMATRIXEX(longint, longint, longint, string) : boolean; external 'ExcelLib3X.dll';
Function XLDOWRITETOMATRIXEX(longint, longint, longint, double) : boolean; external 'ExcelLib3X.dll';
Function XLDTWRITETOMATRIXEX(longint, longint, longint, date) : boolean; external 'ExcelLib3X.dll';
Function XLREADFROMMATRIXEX(longint, longint, longint, var AnyType) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
Function XLWRITEMATRIXTOEXCELEX(longint, longint, longint) : boolean; external 'ExcelLib3X.dll';
Function XLREADMATRIXFROMEXCELEX(longint, longint, longint, longint, longint) : boolean; external 'ExcelLib3X.dll';

Function XLKILLEXCEL : boolean; external 'ExcelLib3X.dll';
Function SHORTSTRTOWIN(string) : string; external 'ExcelLib3X.dll';
Function SHORTSTRTODOS(string) : string; external 'ExcelLib3X.dll';
Function GETTHOUSANDSEPARATOR : char; external 'ExcelLib3X.dll';
Function GETDECIMALSEPARATOR : char; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
// вспомогательные для page setup
// перевод сантиметров в точки
Function XLCENTIMETERSTOPOINTS(double) : double; external 'ExcelLib3X.dll';
// перевод дюймов в точки
Function XLINCHESTOPOINTS(double) : double; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------
// page setup
// функции XLPAGESETUP*
// все аргументы XLPAGESETUPSET...MARGIN(double) в точках (points) !!!
// см. Function XLCENTIMETERSTOPOINTS()
Function XLPAGESETUPSETLEFTMARGIN(double) : boolean; external 'ExcelLib3X.dll';
Function XLPAGESETUPSETRIGHTMARGIN(double) : boolean; external 'ExcelLib3X.dll';
Function XLPAGESETUPSETTOPMARGIN(double) : boolean; external 'ExcelLib3X.dll';
Function XLPAGESETUPSETBOTTOMMARGIN(double) : boolean; external 'ExcelLib3X.dll';
Function XLPAGESETUPSETHEADERMARGIN(double) : boolean; external 'ExcelLib3X.dll';
Function XLPAGESETUPSETFOOTERMARGIN(double) : boolean; external 'ExcelLib3X.dll';
// параметр: xlPortrait, xlLandscape - см. Excel.inc
Function XLPAGESETUPSETORIENTATION(longint) : boolean; external 'ExcelLib3X.dll';
// параметр: xlPaperXXX (xlPaperA4 для A4) - см. Excel.inc
Function XLPAGESETUPSETPAPERSIZE(longint) : boolean; external 'ExcelLib3X.dll';
//------------------------------------------------------------------------------

#endif//ifndef ATL51
Жду выхода Вселенная 2.12!
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Max_Fin
то что доктор прописал! Только никак не пойму, у себя я такой файлик не нашел. Как у меня тогда вообще компиляция проходит и где взять этот файлик (запросить у тех. поддержки?) Заранее спасибо!
m0p3e
Спасибо! Буду спрашивать!
:cool:
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

Вам зачем этот файлик? Это файл исходников для регистрации этих функции в ДЛЛ-ке. Он вам на фиг не нужен :) Просто по нему видно какие функции есть и какие параметры нужны.
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Алексей
Да мне в целом интересно, для общего развития так сказать. Пока вообще не врубаюсь, как Галактика видит функции этих dll.
ПРедставляю это так (из найденных обрывков):
ExcelLib.dll и ExcelLib3X.dll - стандартные файлы идут вместе с Галкой (написаны на дельфях)
RegExcel.dll - что делает??? (вроде как регистрирует из названия)

2) галка сама решает при вызове функции к какой либе обратится (я про 2-х и 3-х уровневые конфигурации)? (набор функций и сами функции я так понял одинаковые, различия только в либе, я про ExcelLib.dll и ExcelLib3X.dll)

3) где вы берете все эти файлы, чувствую себя каким-то побирушкой :( Галка лицензионная, а постоянно чего-то не хватает и приходится просить

ЗАРАНЕЕ СПАСИБО!
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5184
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

Спросите в ТП - Можно ли купить Атлантис и как потом получать обновления на него? Без обновлений это все фигня. ТП вам дает файлы именно из него.
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Атлантис куплен, правда без среды (випера, или как он там). Спасибо, буду трясти ТП
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Сообщение Max_Fin »

Различные inc, vih, ccm можно запрашивать в ТП при условии купленной лицензии на VIP/FCOM или на весь Атлантис.
Исходники Галактики предоставляются при наличии статуса - Партнер-разработчик. Для получения статуса необходима сертификация программистов.
Жду выхода Вселенная 2.12!
eyolkina
Постоянный гость
Сообщения: 85
Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал

Сообщение eyolkina »

eyolkina
очень смешно
Извините, если что не так сказала, но обычно при подключение к Excel из Delphi, елси я не знаю какие-то функции или константы - смотрю в макросах.
Да здравствует разум! Да сгинет маразм!
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

eyolkina
Речь в вопросе шла о функциях библиотек ExcelLib.dll и ExcelLib3X.dll, а не об API самого Excel. Эти либы - обертки над стандартным функционалом Excel - внутри них идет обращение к API Excel-я, так что макросы тут вообще ничем не помогут. Можно конечно выполнять макросы с помощью ExcelLib.dll, но это не самое лучшее решение
eyolkina
Постоянный гость
Сообщения: 85
Зарегистрирован: 23 апр 2008, 14:08
Откуда: г.Уфа МУП Уфаводоканал

Сообщение eyolkina »

galover

ясно :) я уже поняла :)
Да здравствует разум! Да сгинет маразм!
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Сообщение Max_Fin »

galover писал(а):Можно конечно выполнять макросы с помощью ExcelLib.dll, но это не самое лучшее решение
На самом деле лучшее и самое быстрое.
Функции работы с вариантным массивом для вывода + макросы для форматирования - наиболее оптимальный вариант.
Жду выхода Вселенная 2.12!
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Сообщение m0p3e »

Max_Fin писал(а): На самом деле лучшее и самое быстрое.
Функции работы с вариантным массивом для вывода + макросы для форматирования - наиболее оптимальный вариант.
Не соглашусь! Библиотека позволяет практически все сделать не используя макросы. Макрос - это палочка-выручалочка для совсем безвыходных ситуаций. Кроме того не забываем про возможность использования темплейтов.
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Max_Fin
ТОгда уж самый быстрый - это брать отформатированный темлейт и копировать в него массив значений. А вариант с макросами - тот еще гемор- вначале дебаж в Excel, потом пиши макрос в файл, потом отправляй на выполнение, да и ошибки выполнения получаешь только на этапе рантайма, а не компиляции
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5184
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

Ну макросы можно и в темлейт хранить.
Ответить