any lib to read excel XLS/XLSX files?

External libraries (GTK, GSL, SDL, Allegro, OpenGL, etc) questions.
Post Reply
oyster
Posts: 274
Joined: Oct 11, 2005 10:46

any lib to read excel XLS/XLSX files?

Post by oyster »

besides windows' com, is there any lib can read XLS or XLSX files? Thanks
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

hello oyster
a google search turned up this http://www.libxl.com, in case you want to to try it out here's the header translated with fbfrog
place the libxl.dll in the same place where example.bas is
due to forum limitations libxl.bi is split in 2 parts, just append part1 and part2 and save as libxl.bi
part1

Code: Select all

#pragma once

#include once "crt/stddef.bi"

extern "C"

#define LIBXL_C_H
const LIBXL_VERSION = &h03080000
#define LIBXL_BOOKA_H
#define LIBXL_SETUP_C_H
#define LIBXL_CALLING __cdecl
#define XLAPI

#ifdef __FB_WIN32__
	#define XLAPIENTRY LIBXL_CALLING
#else
	#define XLAPIENTRY
#endif

#define LIBXL_HANDLE_H
type BookHandle as tagBookHandle ptr
type SheetHandle as tagSheetHandle ptr
type FormatHandle as tagFormatHandle ptr
type FontHandle as tagFontHandle ptr
type AutoFilterHandle as tagAutoFilterHandle ptr
type FilterColumnHandle as tagFilterColumnHandle ptr

declare function xlCreateBookCA() as BookHandle
declare function xlCreateXMLBookCA() as BookHandle
declare function xlBookLoadA(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookSaveA(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookLoadUsingTempFileA(byval handle as BookHandle, byval filename as const zstring ptr, byval tempFile as const zstring ptr) as long
declare function xlBookSaveUsingTempFileA(byval handle as BookHandle, byval filename as const zstring ptr, byval useTempFile as long) as long
declare function xlBookLoadPartiallyA(byval handle as BookHandle, byval filename as const zstring ptr, byval sheetIndex as long, byval firstRow as long, byval lastRow as long) as long
declare function xlBookLoadPartiallyUsingTempFileA(byval handle as BookHandle, byval filename as const zstring ptr, byval sheetIndex as long, byval firstRow as long, byval lastRow as long, byval tempFile as const zstring ptr) as long
declare function xlBookLoadRawA(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong) as long
declare function xlBookLoadRawPartiallyA(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong, byval sheetIndex as long, byval firstRow as long, byval lastRow as long) as long
declare function xlBookSaveRawA(byval handle as BookHandle, byval data as const zstring ptr ptr, byval size as ulong ptr) as long
declare function xlBookAddSheetA(byval handle as BookHandle, byval name as const zstring ptr, byval initSheet as SheetHandle) as SheetHandle
declare function xlBookInsertSheetA(byval handle as BookHandle, byval index as long, byval name as const zstring ptr, byval initSheet as SheetHandle) as SheetHandle
declare function xlBookGetSheetA(byval handle as BookHandle, byval index as long) as SheetHandle
declare function xlBookSheetTypeA(byval handle as BookHandle, byval index as long) as long
declare function xlBookMoveSheetA(byval handle as BookHandle, byval srcIndex as long, byval dstIndex as long) as long
declare function xlBookDelSheetA(byval handle as BookHandle, byval index as long) as long
declare function xlBookSheetCountA(byval handle as BookHandle) as long
declare function xlBookAddFormatA(byval handle as BookHandle, byval initFormat as FormatHandle) as FormatHandle
declare function xlBookAddFontA(byval handle as BookHandle, byval initFont as FontHandle) as FontHandle
declare function xlBookAddCustomNumFormatA(byval handle as BookHandle, byval customNumFormat as const zstring ptr) as long
declare function xlBookCustomNumFormatA(byval handle as BookHandle, byval fmt as long) as const zstring ptr
declare function xlBookFormatA(byval handle as BookHandle, byval index as long) as FormatHandle
declare function xlBookFormatSizeA(byval handle as BookHandle) as long
declare function xlBookFontA(byval handle as BookHandle, byval index as long) as FontHandle
declare function xlBookFontSizeA(byval handle as BookHandle) as long
declare function xlBookDatePackA(byval handle as BookHandle, byval year as long, byval month as long, byval day as long, byval hour as long, byval min as long, byval sec as long, byval msec as long) as double
declare function xlBookDateUnpackA(byval handle as BookHandle, byval value as double, byval year as long ptr, byval month as long ptr, byval day as long ptr, byval hour as long ptr, byval min as long ptr, byval sec as long ptr, byval msec as long ptr) as long
declare function xlBookColorPackA(byval handle as BookHandle, byval red as long, byval green as long, byval blue as long) as long
declare sub xlBookColorUnpackA(byval handle as BookHandle, byval color as long, byval red as long ptr, byval green as long ptr, byval blue as long ptr)
declare function xlBookActiveSheetA(byval handle as BookHandle) as long
declare sub xlBookSetActiveSheetA(byval handle as BookHandle, byval index as long)
declare function xlBookPictureSizeA(byval handle as BookHandle) as long
declare function xlBookGetPictureA(byval handle as BookHandle, byval index as long, byval data as const zstring ptr ptr, byval size as ulong ptr) as long
declare function xlBookAddPictureA(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookAddPicture2A(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong) as long
declare function xlBookAddPictureAsLinkA(byval handle as BookHandle, byval filename as const zstring ptr, byval insert as long) as long
declare function xlBookDefaultFontA(byval handle as BookHandle, byval fontSize as long ptr) as const zstring ptr
declare sub xlBookSetDefaultFontA(byval handle as BookHandle, byval fontName as const zstring ptr, byval fontSize as long)
declare function xlBookRefR1C1A(byval handle as BookHandle) as long
declare sub xlBookSetRefR1C1A(byval handle as BookHandle, byval refR1C1 as long)
declare sub xlBookSetKeyA(byval handle as BookHandle, byval name as const zstring ptr, byval key as const zstring ptr)
declare function xlBookRgbModeA(byval handle as BookHandle) as long
declare sub xlBookSetRgbModeA(byval handle as BookHandle, byval rgbMode as long)
declare function xlBookVersionA(byval handle as BookHandle) as long
declare function xlBookBiffVersionA(byval handle as BookHandle) as long
declare function xlBookIsDate1904A(byval handle as BookHandle) as long
declare sub xlBookSetDate1904A(byval handle as BookHandle, byval date1904 as long)
declare function xlBookIsTemplateA(byval handle as BookHandle) as long
declare sub xlBookSetTemplateA(byval handle as BookHandle, byval tmpl as long)
declare function xlBookSetLocaleA(byval handle as BookHandle, byval locale as const zstring ptr) as long
declare function xlBookErrorMessageA(byval handle as BookHandle) as const zstring ptr
declare sub xlBookReleaseA(byval handle as BookHandle)
#define LIBXL_SHEETA_H
#define LIBXL_ENUM_C_H

type Color as long '' TODO
enum
	COLOR_BLACK = 8
	COLOR_WHITE
	COLOR_RED
	COLOR_BRIGHTGREEN
	COLOR_BLUE
	COLOR_YELLOW
	COLOR_PINK
	COLOR_TURQUOISE
	COLOR_DARKRED
	COLOR_GREEN
	COLOR_DARKBLUE
	COLOR_DARKYELLOW
	COLOR_VIOLET
	COLOR_TEAL
	COLOR_GRAY25
	COLOR_GRAY50
	COLOR_PERIWINKLE_CF
	COLOR_PLUM_CF
	COLOR_IVORY_CF
	COLOR_LIGHTTURQUOISE_CF
	COLOR_DARKPURPLE_CF
	COLOR_CORAL_CF
	COLOR_OCEANBLUE_CF
	COLOR_ICEBLUE_CF
	COLOR_DARKBLUE_CL
	COLOR_PINK_CL
	COLOR_YELLOW_CL
	COLOR_TURQUOISE_CL
	COLOR_VIOLET_CL
	COLOR_DARKRED_CL
	COLOR_TEAL_CL
	COLOR_BLUE_CL
	COLOR_SKYBLUE
	COLOR_LIGHTTURQUOISE
	COLOR_LIGHTGREEN
	COLOR_LIGHTYELLOW
	COLOR_PALEBLUE
	COLOR_ROSE
	COLOR_LAVENDER
	COLOR_TAN
	COLOR_LIGHTBLUE
	COLOR_AQUA
	COLOR_LIME
	COLOR_GOLD
	COLOR_LIGHTORANGE
	COLOR_ORANGE
	COLOR_BLUEGRAY
	COLOR_GRAY40
	COLOR_DARKTEAL
	COLOR_SEAGREEN
	COLOR_DARKGREEN
	COLOR_OLIVEGREEN
	COLOR_BROWN
	COLOR_PLUM
	COLOR_INDIGO
	COLOR_GRAY80
	COLOR_DEFAULT_FOREGROUND = &h0040
	COLOR_DEFAULT_BACKGROUND = &h0041
	COLOR_TOOLTIP = &h0051
	COLOR_NONE = &h7F
	COLOR_AUTO = &h7FFF
end enum

type NumFormat as long
enum
	NUMFORMAT_GENERAL
	NUMFORMAT_NUMBER
	NUMFORMAT_NUMBER_D2
	NUMFORMAT_NUMBER_SEP
	NUMFORMAT_NUMBER_SEP_D2
	NUMFORMAT_CURRENCY_NEGBRA
	NUMFORMAT_CURRENCY_NEGBRARED
	NUMFORMAT_CURRENCY_D2_NEGBRA
	NUMFORMAT_CURRENCY_D2_NEGBRARED
	NUMFORMAT_PERCENT
	NUMFORMAT_PERCENT_D2
	NUMFORMAT_SCIENTIFIC_D2
	NUMFORMAT_FRACTION_ONEDIG
	NUMFORMAT_FRACTION_TWODIG
	NUMFORMAT_DATE
	NUMFORMAT_CUSTOM_D_MON_YY
	NUMFORMAT_CUSTOM_D_MON
	NUMFORMAT_CUSTOM_MON_YY
	NUMFORMAT_CUSTOM_HMM_AM
	NUMFORMAT_CUSTOM_HMMSS_AM
	NUMFORMAT_CUSTOM_HMM
	NUMFORMAT_CUSTOM_HMMSS
	NUMFORMAT_CUSTOM_MDYYYY_HMM
	NUMFORMAT_NUMBER_SEP_NEGBRA = 37
	NUMFORMAT_NUMBER_SEP_NEGBRARED
	NUMFORMAT_NUMBER_D2_SEP_NEGBRA
	NUMFORMAT_NUMBER_D2_SEP_NEGBRARED
	NUMFORMAT_ACCOUNT
	NUMFORMAT_ACCOUNTCUR
	NUMFORMAT_ACCOUNT_D2
	NUMFORMAT_ACCOUNT_D2_CUR
	NUMFORMAT_CUSTOM_MMSS
	NUMFORMAT_CUSTOM_H0MMSS
	NUMFORMAT_CUSTOM_MMSS0
	NUMFORMAT_CUSTOM_000P0E_PLUS0
	NUMFORMAT_TEXT
end enum

type AlignH as long
enum
	ALIGNH_GENERAL
	ALIGNH_LEFT
	ALIGNH_CENTER
	ALIGNH_RIGHT
	ALIGNH_FILL
	ALIGNH_JUSTIFY
	ALIGNH_MERGE
	ALIGNH_DISTRIBUTED
end enum

type AlignV as long
enum
	ALIGNV_TOP
	ALIGNV_CENTER
	ALIGNV_BOTTOM
	ALIGNV_JUSTIFY
	ALIGNV_DISTRIBUTED
end enum

type BorderStyle as long
enum
	BORDERSTYLE_NONE
	BORDERSTYLE_THIN
	BORDERSTYLE_MEDIUM
	BORDERSTYLE_DASHED
	BORDERSTYLE_DOTTED
	BORDERSTYLE_THICK
	BORDERSTYLE_DOUBLE
	BORDERSTYLE_HAIR
	BORDERSTYLE_MEDIUMDASHED
	BORDERSTYLE_DASHDOT
	BORDERSTYLE_MEDIUMDASHDOT
	BORDERSTYLE_DASHDOTDOT
	BORDERSTYLE_MEDIUMDASHDOTDOT
	BORDERSTYLE_SLANTDASHDOT
end enum

type BorderDiagonal as long
enum
	BORDERDIAGONAL_NONE
	BORDERDIAGONAL_DOWN
	BORDERDIAGONAL_UP
	BORDERDIAGONAL_BOTH
end enum

type FillPattern as long
enum
	FILLPATTERN_NONE
	FILLPATTERN_SOLID
	FILLPATTERN_GRAY50
	FILLPATTERN_GRAY75
	FILLPATTERN_GRAY25
	FILLPATTERN_HORSTRIPE
	FILLPATTERN_VERSTRIPE
	FILLPATTERN_REVDIAGSTRIPE
	FILLPATTERN_DIAGSTRIPE
	FILLPATTERN_DIAGCROSSHATCH
	FILLPATTERN_THICKDIAGCROSSHATCH
	FILLPATTERN_THINHORSTRIPE
	FILLPATTERN_THINVERSTRIPE
	FILLPATTERN_THINREVDIAGSTRIPE
	FILLPATTERN_THINDIAGSTRIPE
	FILLPATTERN_THINHORCROSSHATCH
	FILLPATTERN_THINDIAGCROSSHATCH
	FILLPATTERN_GRAY12P5
	FILLPATTERN_GRAY6P25
end enum

type Script as long
enum
	SCRIPT_NORMAL
	SCRIPT_SUPER
	SCRIPT_SUB
end enum

type Underline as long
enum
	UNDERLINE_NONE
	UNDERLINE_SINGLE
	UNDERLINE_DOUBLE
	UNDERLINE_SINGLEACC = &h21
	UNDERLINE_DOUBLEACC = &h22
end enum

type Paper as long
enum
	PAPER_DEFAULT
	PAPER_LETTER
	PAPER_LETTERSMALL
	PAPER_TABLOID
	PAPER_LEDGER
	PAPER_LEGAL
	PAPER_STATEMENT
	PAPER_EXECUTIVE
	PAPER_A3
	PAPER_A4
	PAPER_A4SMALL
	PAPER_A5
	PAPER_B4
	PAPER_B5
	PAPER_FOLIO
	PAPER_QUATRO
	PAPER_10x14
	PAPER_10x17
	PAPER_NOTE
	PAPER_ENVELOPE_9
	PAPER_ENVELOPE_10
	PAPER_ENVELOPE_11
	PAPER_ENVELOPE_12
	PAPER_ENVELOPE_14
	PAPER_C_SIZE
	PAPER_D_SIZE
	PAPER_E_SIZE
	PAPER_ENVELOPE_DL
	PAPER_ENVELOPE_C5
	PAPER_ENVELOPE_C3
	PAPER_ENVELOPE_C4
	PAPER_ENVELOPE_C6
	PAPER_ENVELOPE_C65
	PAPER_ENVELOPE_B4
	PAPER_ENVELOPE_B5
	PAPER_ENVELOPE_B6
	PAPER_ENVELOPE
	PAPER_ENVELOPE_MONARCH
	PAPER_US_ENVELOPE
	PAPER_FANFOLD
	PAPER_GERMAN_STD_FANFOLD
	PAPER_GERMAN_LEGAL_FANFOLD
	PAPER_B4_ISO
	PAPER_JAPANESE_POSTCARD
	PAPER_9x11
	PAPER_10x11
	PAPER_15x11
	PAPER_ENVELOPE_INVITE
	PAPER_US_LETTER_EXTRA = 50
	PAPER_US_LEGAL_EXTRA
	PAPER_US_TABLOID_EXTRA
	PAPER_A4_EXTRA
	PAPER_LETTER_TRANSVERSE
	PAPER_A4_TRANSVERSE
	PAPER_LETTER_EXTRA_TRANSVERSE
	PAPER_SUPERA
	PAPER_SUPERB
	PAPER_US_LETTER_PLUS
	PAPER_A4_PLUS
	PAPER_A5_TRANSVERSE
	PAPER_B5_TRANSVERSE
	PAPER_A3_EXTRA
	PAPER_A5_EXTRA
	PAPER_B5_EXTRA
	PAPER_A2
	PAPER_A3_TRANSVERSE
	PAPER_A3_EXTRA_TRANSVERSE
	PAPER_JAPANESE_DOUBLE_POSTCARD
	PAPER_A6
	PAPER_JAPANESE_ENVELOPE_KAKU2
	PAPER_JAPANESE_ENVELOPE_KAKU3
	PAPER_JAPANESE_ENVELOPE_CHOU3
	PAPER_JAPANESE_ENVELOPE_CHOU4
	PAPER_LETTER_ROTATED
	PAPER_A3_ROTATED
	PAPER_A4_ROTATED
	PAPER_A5_ROTATED
	PAPER_B4_ROTATED
	PAPER_B5_ROTATED
	PAPER_JAPANESE_POSTCARD_ROTATED
	PAPER_DOUBLE_JAPANESE_POSTCARD_ROTATED
	PAPER_A6_ROTATED
	PAPER_JAPANESE_ENVELOPE_KAKU2_ROTATED
	PAPER_JAPANESE_ENVELOPE_KAKU3_ROTATED
	PAPER_JAPANESE_ENVELOPE_CHOU3_ROTATED
	PAPER_JAPANESE_ENVELOPE_CHOU4_ROTATED
	PAPER_B6
	PAPER_B6_ROTATED
	PAPER_12x11
	PAPER_JAPANESE_ENVELOPE_YOU4
	PAPER_JAPANESE_ENVELOPE_YOU4_ROTATED
	PAPER_PRC16K
	PAPER_PRC32K
	PAPER_PRC32K_BIG
	PAPER_PRC_ENVELOPE1
	PAPER_PRC_ENVELOPE2
	PAPER_PRC_ENVELOPE3
	PAPER_PRC_ENVELOPE4
	PAPER_PRC_ENVELOPE5
	PAPER_PRC_ENVELOPE6
	PAPER_PRC_ENVELOPE7
	PAPER_PRC_ENVELOPE8
	PAPER_PRC_ENVELOPE9
	PAPER_PRC_ENVELOPE10
	PAPER_PRC16K_ROTATED
	PAPER_PRC32K_ROTATED
	PAPER_PRC32KBIG_ROTATED
	PAPER_PRC_ENVELOPE1_ROTATED
	PAPER_PRC_ENVELOPE2_ROTATED
	PAPER_PRC_ENVELOPE3_ROTATED
	PAPER_PRC_ENVELOPE4_ROTATED
	PAPER_PRC_ENVELOPE5_ROTATED
	PAPER_PRC_ENVELOPE6_ROTATED
	PAPER_PRC_ENVELOPE7_ROTATED
	PAPER_PRC_ENVELOPE8_ROTATED
	PAPER_PRC_ENVELOPE9_ROTATED
	PAPER_PRC_ENVELOPE10_ROTATED
end enum

type SheetType as long
enum
	SHEETTYPE_SHEET
	SHEETTYPE_CHART
	SHEETTYPE_UNKNOWN
end enum

type CellType as long
enum
	CELLTYPE_EMPTY
	CELLTYPE_NUMBER
	CELLTYPE_STRING
	CELLTYPE_BOOLEAN
	CELLTYPE_BLANK
	CELLTYPE_ERROR
end enum

type ErrorType as long
enum
	ERRORTYPE_NULL = &h00
	ERRORTYPE_DIV_0 = &h07
	ERRORTYPE_VALUE = &h0F
	ERRORTYPE_REF = &h17
	ERRORTYPE_NAME = &h1D
	ERRORTYPE_NUM = &h24
	ERRORTYPE_NA = &h2A
	ERRORTYPE_NOERROR = &hFF
end enum

type PictureType as long
enum
	PICTURETYPE_PNG
	PICTURETYPE_JPEG
	PICTURETYPE_GIF
	PICTURETYPE_WMF
	PICTURETYPE_DIB
	PICTURETYPE_EMF
	PICTURETYPE_PICT
	PICTURETYPE_TIFF
	PICTURETYPE_ERROR = &hFF
end enum

type SheetState as long
enum
	SHEETSTATE_VISIBLE
	SHEETSTATE_HIDDEN
	SHEETSTATE_VERYHIDDEN
end enum

type Scope_ as long
enum
	SCOPE_UNDEFINED = -2
	SCOPE_WORKBOOK = -1
end enum

type Position as long
enum
	POSITION_MOVE_AND_SIZE
	POSITION_ONLY_MOVE
	POSITION_ABSOLUTE
end enum

type Operator_ as long
enum
	OPERATOR_EQUAL
	OPERATOR_GREATER_THAN
	OPERATOR_GREATER_THAN_OR_EQUAL
	OPERATOR_LESS_THAN
	OPERATOR_LESS_THAN_OR_EQUAL
	OPERATOR_NOT_EQUAL
end enum

type Filter as long
enum
	FILTER_VALUE
	FILTER_TOP10
	FILTER_CUSTOM
	FILTER_DYNAMIC
	FILTER_COLOR
	FILTER_ICON
	FILTER_EXT
	FILTER_NOT_SET
end enum

type IgnoredError as long
enum
	IERR_NO_ERROR = 0
	IERR_EVAL_ERROR = 1
	IERR_EMPTY_CELLREF = 2
	IERR_NUMBER_STORED_AS_TEXT = 4
	IERR_INCONSIST_RANGE = 8
	IERR_INCONSIST_FMLA = 16
	IERR_TWODIG_TEXTYEAR = 32
	IERR_UNLOCK_FMLA = 64
	IERR_DATA_VALIDATION = 128
end enum

type EnhancedProtection as long
enum
	PROT_DEFAULT = -1
	PROT_ALL = 0
	PROT_OBJECTS = 1
	PROT_SCENARIOS = 2
	PROT_FORMAT_CELLS = 4
	PROT_FORMAT_COLUMNS = 8
	PROT_FORMAT_ROWS = 16
	PROT_INSERT_COLUMNS = 32
	PROT_INSERT_ROWS = 64
	PROT_INSERT_HYPERLINKS = 128
	PROT_DELETE_COLUMNS = 256
	PROT_DELETE_ROWS = 512
	PROT_SEL_LOCKED_CELLS = 1024
	PROT_SORT = 2048
	PROT_AUTOFILTER = 4096
	PROT_PIVOTTABLES = 8192
	PROT_SEL_UNLOCKED_CELLS = 16384
end enum

type DataValidationType as long
enum
	VALIDATION_TYPE_NONE
	VALIDATION_TYPE_WHOLE
	VALIDATION_TYPE_DECIMAL
	VALIDATION_TYPE_LIST
	VALIDATION_TYPE_DATE
	VALIDATION_TYPE_TIME
	VALIDATION_TYPE_TEXTLENGTH
	VALIDATION_TYPE_CUSTOM
end enum

type DataValidationOperator as long
enum
	VALIDATION_OP_BETWEEN
	VALIDATION_OP_NOTBETWEEN
	VALIDATION_OP_EQUAL
	VALIDATION_OP_NOTEQUAL
	VALIDATION_OP_LESSTHAN
	VALIDATION_OP_LESSTHANOREQUAL
	VALIDATION_OP_GREATERTHAN
	VALIDATION_OP_GREATERTHANOREQUAL
end enum

type DataValidationErrorStyle as long
enum
	VALIDATION_ERRSTYLE_STOP
	VALIDATION_ERRSTYLE_WARNING
	VALIDATION_ERRSTYLE_INFORMATION
end enum

declare function xlSheetCellTypeA(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetIsFormulaA(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetCellFormatA(byval handle as SheetHandle, byval row as long, byval col as long) as FormatHandle
declare sub xlSheetSetCellFormatA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle)
declare function xlSheetReadStrA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as const zstring ptr
declare function xlSheetWriteStrA(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetReadNumA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as double
declare function xlSheetWriteNumA(byval handle as SheetHandle, byval row as long, byval col as long, byval value as double, byval format as FormatHandle) as long
declare function xlSheetReadBoolA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as long
declare function xlSheetWriteBoolA(byval handle as SheetHandle, byval row as long, byval col as long, byval value as long, byval format as FormatHandle) as long
declare function xlSheetReadBlankA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as long
declare function xlSheetWriteBlankA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle) as long
declare function xlSheetReadFormulaA(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as const zstring ptr
declare function xlSheetWriteFormulaA(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaNumA(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as double, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaStrA(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaBoolA(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as long, byval format as FormatHandle) as long
declare function xlSheetReadCommentA(byval handle as SheetHandle, byval row as long, byval col as long) as const zstring ptr
declare sub xlSheetWriteCommentA(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval author as const zstring ptr, byval width as long, byval height as long)
declare sub xlSheetRemoveCommentA(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetIsDateA(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetReadErrorA(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare sub xlSheetWriteErrorA(byval handle as SheetHandle, byval row as long, byval col as long, byval error as long, byval format as FormatHandle)
declare function xlSheetColWidthA(byval handle as SheetHandle, byval col as long) as double
declare function xlSheetRowHeightA(byval handle as SheetHandle, byval row as long) as double
declare function xlSheetSetColA(byval handle as SheetHandle, byval colFirst as long, byval colLast as long, byval width as double, byval format as FormatHandle, byval hidden as long) as long
declare function xlSheetSetRowA(byval handle as SheetHandle, byval row as long, byval height as double, byval format as FormatHandle, byval hidden as long) as long
declare function xlSheetRowHiddenA(byval handle as SheetHandle, byval row as long) as long
declare function xlSheetSetRowHiddenA(byval handle as SheetHandle, byval row as long, byval hidden as long) as long
declare function xlSheetColHiddenA(byval handle as SheetHandle, byval col as long) as long
declare function xlSheetSetColHiddenA(byval handle as SheetHandle, byval col as long, byval hidden as long) as long
declare function xlSheetGetMergeA(byval handle as SheetHandle, byval row as long, byval col as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlSheetSetMergeA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long) as long
declare function xlSheetDelMergeA(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetMergeSizeA(byval handle as SheetHandle) as long
declare function xlSheetMergeA(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlSheetDelMergeByIndexA(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetPictureSizeA(byval handle as SheetHandle) as long
declare function xlSheetGetPictureA(byval handle as SheetHandle, byval index as long, byval rowTop as long ptr, byval colLeft as long ptr, byval rowBottom as long ptr, byval colRight as long ptr, byval width as long ptr, byval height as long ptr, byval offset_x as long ptr, byval offset_y as long ptr) as long
declare sub xlSheetSetPictureA(byval handle as SheetHandle, byval row as long, byval col as long, byval pictureId as long, byval scale as double, byval offset_x as long, byval offset_y as long, byval pos as long)
declare sub xlSheetSetPicture2A(byval handle as SheetHandle, byval row as long, byval col as long, byval pictureId as long, byval width as long, byval height as long, byval offset_x as long, byval offset_y as long, byval pos as long)
declare function xlSheetGetHorPageBreakA(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetGetHorPageBreakSizeA(byval handle as SheetHandle) as long
declare function xlSheetGetVerPageBreakA(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetGetVerPageBreakSizeA(byval handle as SheetHandle) as long
declare function xlSheetSetHorPageBreakA(byval handle as SheetHandle, byval row as long, byval pageBreak as long) as long
declare function xlSheetSetVerPageBreakA(byval handle as SheetHandle, byval col as long, byval pageBreak as long) as long
declare sub xlSheetSplitA(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetSplitInfoA(byval handle as SheetHandle, byval row as long ptr, byval col as long ptr) as long
declare function xlSheetGroupRowsA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval collapsed as long) as long
declare function xlSheetGroupColsA(byval handle as SheetHandle, byval colFirst as long, byval colLast as long, byval collapsed as long) as long
declare function xlSheetGroupSummaryBelowA(byval handle as SheetHandle) as long
declare sub xlSheetSetGroupSummaryBelowA(byval handle as SheetHandle, byval below as long)
declare function xlSheetGroupSummaryRightA(byval handle as SheetHandle) as long
declare sub xlSheetSetGroupSummaryRightA(byval handle as SheetHandle, byval right as long)
declare sub xlSheetClearA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlSheetInsertColA(byval handle as SheetHandle, byval colFirst as long, byval colLast as long) as long
declare function xlSheetInsertRowA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long) as long
declare function xlSheetRemoveColA(byval handle as SheetHandle, byval colFirst as long, byval colLast as long) as long
declare function xlSheetRemoveRowA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long) as long
declare function xlSheetCopyCellA(byval handle as SheetHandle, byval rowSrc as long, byval colSrc as long, byval rowDst as long, byval colDst as long) as long
declare function xlSheetFirstRowA(byval handle as SheetHandle) as long
declare function xlSheetLastRowA(byval handle as SheetHandle) as long
declare function xlSheetFirstColA(byval handle as SheetHandle) as long
declare function xlSheetLastColA(byval handle as SheetHandle) as long
declare function xlSheetDisplayGridlinesA(byval handle as SheetHandle) as long
declare sub xlSheetSetDisplayGridlinesA(byval handle as SheetHandle, byval show as long)
declare function xlSheetPrintGridlinesA(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintGridlinesA(byval handle as SheetHandle, byval print as long)
declare function xlSheetZoomA(byval handle as SheetHandle) as long
declare sub xlSheetSetZoomA(byval handle as SheetHandle, byval zoom as long)
declare function xlSheetPrintZoomA(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintZoomA(byval handle as SheetHandle, byval zoom as long)
declare function xlSheetGetPrintFitA(byval handle as SheetHandle, byval wPages as long ptr, byval hPages as long ptr) as long
declare sub xlSheetSetPrintFitA(byval handle as SheetHandle, byval wPages as long, byval hPages as long)
declare function xlSheetLandscapeA(byval handle as SheetHandle) as long
declare sub xlSheetSetLandscapeA(byval handle as SheetHandle, byval landscape as long)
declare function xlSheetPaperA(byval handle as SheetHandle) as long
declare sub xlSheetSetPaperA(byval handle as SheetHandle, byval paper as long)
declare function xlSheetHeaderA(byval handle as SheetHandle) as const zstring ptr
declare function xlSheetSetHeaderA(byval handle as SheetHandle, byval header as const zstring ptr, byval margin as double) as long
declare function xlSheetHeaderMarginA(byval handle as SheetHandle) as double
declare function xlSheetFooterA(byval handle as SheetHandle) as const zstring ptr
declare function xlSheetSetFooterA(byval handle as SheetHandle, byval footer as const zstring ptr, byval margin as double) as long
declare function xlSheetFooterMarginA(byval handle as SheetHandle) as double
declare function xlSheetHCenterA(byval handle as SheetHandle) as long
declare sub xlSheetSetHCenterA(byval handle as SheetHandle, byval hCenter as long)
declare function xlSheetVCenterA(byval handle as SheetHandle) as long
declare sub xlSheetSetVCenterA(byval handle as SheetHandle, byval vCenter as long)
declare function xlSheetMarginLeftA(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginLeftA(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginRightA(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginRightA(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginTopA(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginTopA(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginBottomA(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginBottomA(byval handle as SheetHandle, byval margin as double)
declare function xlSheetPrintRowColA(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintRowColA(byval handle as SheetHandle, byval print as long)
declare function xlSheetPrintRepeatRowsA(byval handle as SheetHandle, byval rowFirst as long ptr, byval rowLast as long ptr) as long
declare sub xlSheetSetPrintRepeatRowsA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long)
declare function xlSheetPrintRepeatColsA(byval handle as SheetHandle, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlSheetSetPrintRepeatColsA(byval handle as SheetHandle, byval colFirst as long, byval colLast as long)
declare function xlSheetPrintAreaA(byval handle as SheetHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlSheetSetPrintAreaA(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare sub xlSheetClearPrintRepeatsA(byval handle as SheetHandle)
declare sub xlSheetClearPrintAreaA(byval handle as SheetHandle)
declare function xlSheetGetNamedRangeA(byval handle as SheetHandle, byval name as const zstring ptr, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval scopeId as long, byval hidden as long ptr) as long
declare function xlSheetSetNamedRangeA(byval handle as SheetHandle, byval name as const zstring ptr, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval scopeId as long) as long
declare function xlSheetDelNamedRangeA(byval handle as SheetHandle, byval name as const zstring ptr, byval scopeId as long) as long
declare function xlSheetNamedRangeSizeA(byval handle as SheetHandle) as long
declare function xlSheetNamedRangeA(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval scopeId as long ptr, byval hidden as long ptr) as const zstring ptr
declare function xlSheetTableSizeA(byval handle as SheetHandle) as long
declare function xlSheetTableA(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval headerRowCount as long ptr, byval totalsRowCount as long ptr) as const zstring ptr
declare function xlSheetHyperlinkSizeA(byval handle as SheetHandle) as long
declare function xlSheetHyperlinkA(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as const zstring ptr
declare function xlSheetDelHyperlinkA(byval handle as SheetHandle, byval index as long) as long
declare sub xlSheetAddHyperlinkA(byval handle as SheetHandle, byval hyperlink as const zstring ptr, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlSheetAutoFilterA(byval handle as SheetHandle) as AutoFilterHandle
declare sub xlSheetApplyFilterA(byval handle as SheetHandle)
declare sub xlSheetRemoveFilterA(byval handle as SheetHandle)
declare function xlSheetNameA(byval handle as SheetHandle) as const zstring ptr
declare sub xlSheetSetNameA(byval handle as SheetHandle, byval name as const zstring ptr)
declare function xlSheetProtectA(byval handle as SheetHandle) as long
declare sub xlSheetSetProtectA(byval handle as SheetHandle, byval protect as long)
declare sub xlSheetSetProtectExA(byval handle as SheetHandle, byval protect as long, byval password as const zstring ptr, byval enhancedProtection as long)
declare function xlSheetHiddenA(byval handle as SheetHandle) as long
declare function xlSheetSetHiddenA(byval handle as SheetHandle, byval hidden as long) as long
declare sub xlSheetGetTopLeftViewA(byval handle as SheetHandle, byval row as long ptr, byval col as long ptr)
declare sub xlSheetSetTopLeftViewA(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetRightToLeftA(byval handle as SheetHandle) as long
declare sub xlSheetSetRightToLeftA(byval handle as SheetHandle, byval rightToLeft as long)
declare sub xlSheetSetAutoFitAreaA(byval handle as SheetHandle, byval rowFirst as long, byval colFirst as long, byval rowLast as long, byval colLast as long)
declare sub xlSheetAddrToRowColA(byval handle as SheetHandle, byval addr as const zstring ptr, byval row as long ptr, byval col as long ptr, byval rowRelative as long ptr, byval colRelative as long ptr)
declare function xlSheetRowColToAddrA(byval handle as SheetHandle, byval row as long, byval col as long, byval rowRelative as long, byval colRelative as long) as const zstring ptr
declare sub xlSheetSetTabColorA(byval handle as SheetHandle, byval color as long)
declare sub xlSheetSetTabRgbColorA(byval handle as SheetHandle, byval red as long, byval green as long, byval blue as long)
declare function xlSheetAddIgnoredErrorA(byval handle as SheetHandle, byval rowFirst as long, byval colFirst as long, byval rowLast as long, byval colLast as long, byval iError as long) as long
declare sub xlSheetAddDataValidationA(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as const zstring ptr, byval value2 as const zstring ptr)
declare sub xlSheetAddDataValidationExA(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as const zstring ptr, byval value2 as const zstring ptr, byval allowBlank as long, byval hideDropDown as long, byval showInputMessage as long, byval showErrorMessage as long, byval promptTitle as const zstring ptr, byval prompt as const zstring ptr, byval errorTitle as const zstring ptr, byval error as const zstring ptr, byval errorStyle as long)
declare sub xlSheetAddDataValidationDoubleA(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as double, byval value2 as double)
declare sub xlSheetAddDataValidationDoubleExA(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as double, byval value2 as double, byval allowBlank as long, byval hideDropDown as long, byval showInputMessage as long, byval showErrorMessage as long, byval promptTitle as const zstring ptr, byval prompt as const zstring ptr, byval errorTitle as const zstring ptr, byval error as const zstring ptr, byval errorStyle as long)
declare sub xlSheetRemoveDataValidationsA(byval handle as SheetHandle)
Last edited by srvaldez on Jun 25, 2017 21:19, edited 2 times in total.
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

part2

Code: Select all

#define LIBXL_FORMATA_H
declare function xlFormatFontA(byval handle as FormatHandle) as FontHandle
declare function xlFormatSetFontA(byval handle as FormatHandle, byval fontHandle as FontHandle) as long
declare function xlFormatNumFormatA(byval handle as FormatHandle) as long
declare sub xlFormatSetNumFormatA(byval handle as FormatHandle, byval numFormat as long)
declare function xlFormatAlignHA(byval handle as FormatHandle) as long
declare sub xlFormatSetAlignHA(byval handle as FormatHandle, byval align as long)
declare function xlFormatAlignVA(byval handle as FormatHandle) as long
declare sub xlFormatSetAlignVA(byval handle as FormatHandle, byval align as long)
declare function xlFormatWrapA(byval handle as FormatHandle) as long
declare sub xlFormatSetWrapA(byval handle as FormatHandle, byval wrap as long)
declare function xlFormatRotationA(byval handle as FormatHandle) as long
declare function xlFormatSetRotationA(byval handle as FormatHandle, byval rotation as long) as long
declare function xlFormatIndentA(byval handle as FormatHandle) as long
declare sub xlFormatSetIndentA(byval handle as FormatHandle, byval indent as long)
declare function xlFormatShrinkToFitA(byval handle as FormatHandle) as long
declare sub xlFormatSetShrinkToFitA(byval handle as FormatHandle, byval shrinkToFit as long)
declare sub xlFormatSetBorderA(byval handle as FormatHandle, byval style as long)
declare sub xlFormatSetBorderColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderLeftA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderLeftA(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderRightA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderRightA(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderTopA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderTopA(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderBottomA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderBottomA(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderLeftColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderLeftColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderRightColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderRightColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderTopColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderTopColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderBottomColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderBottomColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderDiagonalA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonalA(byval handle as FormatHandle, byval border as long)
declare function xlFormatBorderDiagonalStyleA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonalStyleA(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderDiagonalColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonalColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatFillPatternA(byval handle as FormatHandle) as long
declare sub xlFormatSetFillPatternA(byval handle as FormatHandle, byval pattern as long)
declare function xlFormatPatternForegroundColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetPatternForegroundColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatPatternBackgroundColorA(byval handle as FormatHandle) as long
declare sub xlFormatSetPatternBackgroundColorA(byval handle as FormatHandle, byval color as long)
declare function xlFormatLockedA(byval handle as FormatHandle) as long
declare sub xlFormatSetLockedA(byval handle as FormatHandle, byval locked as long)
declare function xlFormatHiddenA(byval handle as FormatHandle) as long
declare sub xlFormatSetHiddenA(byval handle as FormatHandle, byval hidden as long)
#define LIBXL_FONTA_H
declare function xlFontSizeA(byval handle as FontHandle) as long
declare sub xlFontSetSizeA(byval handle as FontHandle, byval size as long)
declare function xlFontItalicA(byval handle as FontHandle) as long
declare sub xlFontSetItalicA(byval handle as FontHandle, byval italic as long)
declare function xlFontStrikeOutA(byval handle as FontHandle) as long
declare sub xlFontSetStrikeOutA(byval handle as FontHandle, byval strikeOut as long)
declare function xlFontColorA(byval handle as FontHandle) as long
declare sub xlFontSetColorA(byval handle as FontHandle, byval color as long)
declare function xlFontBoldA(byval handle as FontHandle) as long
declare sub xlFontSetBoldA(byval handle as FontHandle, byval bold as long)
declare function xlFontScriptA(byval handle as FontHandle) as long
declare sub xlFontSetScriptA(byval handle as FontHandle, byval script as long)
declare function xlFontUnderlineA(byval handle as FontHandle) as long
declare sub xlFontSetUnderlineA(byval handle as FontHandle, byval underline as long)
declare function xlFontNameA(byval handle as FontHandle) as const zstring ptr
declare sub xlFontSetNameA(byval handle as FontHandle, byval name as const zstring ptr)
#define LIBXL_AUTOFILTERA_H
declare function xlAutoFilterGetRefA(byval handle as AutoFilterHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlAutoFilterSetRefA(byval handle as AutoFilterHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlAutoFilterColumnA(byval handle as AutoFilterHandle, byval colId as long) as FilterColumnHandle
declare function xlAutoFilterColumnSizeA(byval handle as AutoFilterHandle) as long
declare function xlAutoFilterColumnByIndexA(byval handle as AutoFilterHandle, byval index as long) as FilterColumnHandle
declare function xlAutoFilterGetSortRangeA(byval handle as AutoFilterHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlAutoFilterGetSortA(byval handle as AutoFilterHandle, byval columnIndex as long ptr, byval descending as long ptr) as long
declare function xlAutoFilterSetSortA(byval handle as AutoFilterHandle, byval columnIndex as long, byval descending as long) as long
#define LIBXL_FILTERCOLUMNA_H
declare function xlFilterColumnIndexA(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilterTypeA(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilterSizeA(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilterA(byval handle as FilterColumnHandle, byval index as long) as const zstring ptr
declare sub xlFilterColumnAddFilterA(byval handle as FilterColumnHandle, byval value as const zstring ptr)
declare function xlFilterColumnGetTop10A(byval handle as FilterColumnHandle, byval value as double ptr, byval top as long ptr, byval percent as long ptr) as long
declare sub xlFilterColumnSetTop10A(byval handle as FilterColumnHandle, byval value as double, byval top as long, byval percent as long)
declare function xlFilterColumnGetCustomFilterA(byval handle as FilterColumnHandle, byval op1 as long ptr, byval v1 as const zstring ptr ptr, byval op2 as long ptr, byval v2 as const zstring ptr ptr, byval andOp as long ptr) as long
declare sub xlFilterColumnSetCustomFilterA(byval handle as FilterColumnHandle, byval op as long, byval cond as const zstring ptr)
declare sub xlFilterColumnSetCustomFilterExA(byval handle as FilterColumnHandle, byval op1 as long, byval v1 as const zstring ptr, byval op2 as long, byval v2 as const zstring ptr, byval andOp as long)
declare sub xlFilterColumnClearA(byval handle as FilterColumnHandle)
declare function xlCreateBook alias "xlCreateBookCA"() as BookHandle
declare function xlCreateXMLBook alias "xlCreateXMLBookCA"() as BookHandle
declare function xlBookLoad alias "xlBookLoadA"(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookSave alias "xlBookSaveA"(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookLoadUsingTempFile alias "xlBookLoadUsingTempFileA"(byval handle as BookHandle, byval filename as const zstring ptr, byval tempFile as const zstring ptr) as long
declare function xlBookSaveUsingTempFile alias "xlBookSaveUsingTempFileA"(byval handle as BookHandle, byval filename as const zstring ptr, byval useTempFile as long) as long
declare function xlBookLoadPartially alias "xlBookLoadPartiallyA"(byval handle as BookHandle, byval filename as const zstring ptr, byval sheetIndex as long, byval firstRow as long, byval lastRow as long) as long
declare function xlBookLoadPartiallyUsingTempFile alias "xlBookLoadPartiallyUsingTempFileA"(byval handle as BookHandle, byval filename as const zstring ptr, byval sheetIndex as long, byval firstRow as long, byval lastRow as long, byval tempFile as const zstring ptr) as long
declare function xlBookLoadRaw alias "xlBookLoadRawA"(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong) as long
declare function xlBookLoadRawPartially alias "xlBookLoadRawPartiallyA"(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong, byval sheetIndex as long, byval firstRow as long, byval lastRow as long) as long
declare function xlBookSaveRaw alias "xlBookSaveRawA"(byval handle as BookHandle, byval data as const zstring ptr ptr, byval size as ulong ptr) as long
declare function xlBookAddSheet alias "xlBookAddSheetA"(byval handle as BookHandle, byval name as const zstring ptr, byval initSheet as SheetHandle) as SheetHandle
declare function xlBookInsertSheet alias "xlBookInsertSheetA"(byval handle as BookHandle, byval index as long, byval name as const zstring ptr, byval initSheet as SheetHandle) as SheetHandle
declare function xlBookGetSheet alias "xlBookGetSheetA"(byval handle as BookHandle, byval index as long) as SheetHandle
declare function xlBookSheetType alias "xlBookSheetTypeA"(byval handle as BookHandle, byval index as long) as long
declare function xlBookMoveSheet alias "xlBookMoveSheetA"(byval handle as BookHandle, byval srcIndex as long, byval dstIndex as long) as long
declare function xlBookDelSheet alias "xlBookDelSheetA"(byval handle as BookHandle, byval index as long) as long
declare function xlBookSheetCount alias "xlBookSheetCountA"(byval handle as BookHandle) as long
declare function xlBookAddFormat alias "xlBookAddFormatA"(byval handle as BookHandle, byval initFormat as FormatHandle) as FormatHandle
declare function xlBookAddFont alias "xlBookAddFontA"(byval handle as BookHandle, byval initFont as FontHandle) as FontHandle
declare function xlBookAddCustomNumFormat alias "xlBookAddCustomNumFormatA"(byval handle as BookHandle, byval customNumFormat as const zstring ptr) as long
declare function xlBookCustomNumFormat alias "xlBookCustomNumFormatA"(byval handle as BookHandle, byval fmt as long) as const zstring ptr
declare function xlBookFormat alias "xlBookFormatA"(byval handle as BookHandle, byval index as long) as FormatHandle
declare function xlBookFormatSize alias "xlBookFormatSizeA"(byval handle as BookHandle) as long
declare function xlBookFont alias "xlBookFontA"(byval handle as BookHandle, byval index as long) as FontHandle
declare function xlBookFontSize alias "xlBookFontSizeA"(byval handle as BookHandle) as long
declare function xlBookDatePack alias "xlBookDatePackA"(byval handle as BookHandle, byval year as long, byval month as long, byval day as long, byval hour as long, byval min as long, byval sec as long, byval msec as long) as double
declare function xlBookDateUnpack alias "xlBookDateUnpackA"(byval handle as BookHandle, byval value as double, byval year as long ptr, byval month as long ptr, byval day as long ptr, byval hour as long ptr, byval min as long ptr, byval sec as long ptr, byval msec as long ptr) as long
declare function xlBookColorPack alias "xlBookColorPackA"(byval handle as BookHandle, byval red as long, byval green as long, byval blue as long) as long
declare sub xlBookColorUnpack alias "xlBookColorUnpackA"(byval handle as BookHandle, byval color as long, byval red as long ptr, byval green as long ptr, byval blue as long ptr)
declare function xlBookActiveSheet alias "xlBookActiveSheetA"(byval handle as BookHandle) as long
declare sub xlBookSetActiveSheet alias "xlBookSetActiveSheetA"(byval handle as BookHandle, byval index as long)
declare function xlBookPictureSize alias "xlBookPictureSizeA"(byval handle as BookHandle) as long
declare function xlBookGetPicture alias "xlBookGetPictureA"(byval handle as BookHandle, byval index as long, byval data as const zstring ptr ptr, byval size as ulong ptr) as long
declare function xlBookAddPicture alias "xlBookAddPictureA"(byval handle as BookHandle, byval filename as const zstring ptr) as long
declare function xlBookAddPicture2 alias "xlBookAddPicture2A"(byval handle as BookHandle, byval data as const zstring ptr, byval size as ulong) as long
declare function xlBookAddPictureAsLink alias "xlBookAddPictureAsLinkA"(byval handle as BookHandle, byval filename as const zstring ptr, byval insert as long) as long
declare function xlBookDefaultFont alias "xlBookDefaultFontA"(byval handle as BookHandle, byval fontSize as long ptr) as const zstring ptr
declare sub xlBookSetDefaultFont alias "xlBookSetDefaultFontA"(byval handle as BookHandle, byval fontName as const zstring ptr, byval fontSize as long)
declare sub xlBookSetKey alias "xlBookSetKeyA"(byval handle as BookHandle, byval name as const zstring ptr, byval key as const zstring ptr)
declare function xlBookRefR1C1 alias "xlBookRefR1C1A"(byval handle as BookHandle) as long
declare sub xlBookSetRefR1C1 alias "xlBookSetRefR1C1A"(byval handle as BookHandle, byval refR1C1 as long)
declare function xlBookRgbMode alias "xlBookRgbModeA"(byval handle as BookHandle) as long
declare sub xlBookSetRgbMode alias "xlBookSetRgbModeA"(byval handle as BookHandle, byval rgbMode as long)
declare function xlBookVersion alias "xlBookVersionA"(byval handle as BookHandle) as long
declare function xlBookBiffVersion alias "xlBookBiffVersionA"(byval handle as BookHandle) as long
declare function xlBookIsDate1904 alias "xlBookIsDate1904A"(byval handle as BookHandle) as long
declare sub xlBookSetDate1904 alias "xlBookSetDate1904A"(byval handle as BookHandle, byval date1904 as long)
declare function xlBookIsTemplate alias "xlBookIsTemplateA"(byval handle as BookHandle) as long
declare sub xlBookSetTemplate alias "xlBookSetTemplateA"(byval handle as BookHandle, byval tmpl as long)
declare function xlBookSetLocale alias "xlBookSetLocaleA"(byval handle as BookHandle, byval locale as const zstring ptr) as long
declare function xlBookErrorMessage alias "xlBookErrorMessageA"(byval handle as BookHandle) as const zstring ptr
declare sub xlBookRelease alias "xlBookReleaseA"(byval handle as BookHandle)
declare function xlSheetCellType alias "xlSheetCellTypeA"(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetCellFormat alias "xlSheetCellFormatA"(byval handle as SheetHandle, byval row as long, byval col as long) as FormatHandle
declare sub xlSheetSetCellFormat alias "xlSheetSetCellFormatA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle)
declare function xlSheetIsFormula alias "xlSheetIsFormulaA"(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetReadStr alias "xlSheetReadStrA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as const zstring ptr
declare function xlSheetWriteStr alias "xlSheetWriteStrA"(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetReadNum alias "xlSheetReadNumA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as double
declare function xlSheetWriteNum alias "xlSheetWriteNumA"(byval handle as SheetHandle, byval row as long, byval col as long, byval value as double, byval format as FormatHandle) as long
declare function xlSheetReadBool alias "xlSheetReadBoolA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as long
declare function xlSheetWriteBool alias "xlSheetWriteBoolA"(byval handle as SheetHandle, byval row as long, byval col as long, byval value as long, byval format as FormatHandle) as long
declare function xlSheetReadBlank alias "xlSheetReadBlankA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as long
declare function xlSheetWriteBlank alias "xlSheetWriteBlankA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle) as long
declare function xlSheetReadFormula alias "xlSheetReadFormulaA"(byval handle as SheetHandle, byval row as long, byval col as long, byval format as FormatHandle ptr) as const zstring ptr
declare function xlSheetWriteFormula alias "xlSheetWriteFormulaA"(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaNum alias "xlSheetWriteFormulaNumA"(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as double, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaStr alias "xlSheetWriteFormulaStrA"(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as const zstring ptr, byval format as FormatHandle) as long
declare function xlSheetWriteFormulaBool alias "xlSheetWriteFormulaBoolA"(byval handle as SheetHandle, byval row as long, byval col as long, byval expr as const zstring ptr, byval value as long, byval format as FormatHandle) as long
declare function xlSheetReadComment alias "xlSheetReadCommentA"(byval handle as SheetHandle, byval row as long, byval col as long) as const zstring ptr
declare sub xlSheetWriteComment alias "xlSheetWriteCommentA"(byval handle as SheetHandle, byval row as long, byval col as long, byval value as const zstring ptr, byval author as const zstring ptr, byval width as long, byval height as long)
declare sub xlSheetRemoveComment alias "xlSheetRemoveCommentA"(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetIsDate alias "xlSheetIsDateA"(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetReadError alias "xlSheetReadErrorA"(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare sub xlSheetWriteError alias "xlSheetWriteErrorA"(byval handle as SheetHandle, byval row as long, byval col as long, byval error as long, byval format as FormatHandle)
declare function xlSheetColWidth alias "xlSheetColWidthA"(byval handle as SheetHandle, byval col as long) as double
declare function xlSheetRowHeight alias "xlSheetRowHeightA"(byval handle as SheetHandle, byval row as long) as double
declare function xlSheetSetCol alias "xlSheetSetColA"(byval handle as SheetHandle, byval colFirst as long, byval colLast as long, byval width as double, byval format as FormatHandle, byval hidden as long) as long
declare function xlSheetSetRow alias "xlSheetSetRowA"(byval handle as SheetHandle, byval row as long, byval height as double, byval format as FormatHandle, byval hidden as long) as long
declare function xlSheetRowHidden alias "xlSheetRowHiddenA"(byval handle as SheetHandle, byval row as long) as long
declare function xlSheetSetRowHidden alias "xlSheetSetRowHiddenA"(byval handle as SheetHandle, byval row as long, byval hidden as long) as long
declare function xlSheetColHidden alias "xlSheetColHiddenA"(byval handle as SheetHandle, byval col as long) as long
declare function xlSheetSetColHidden alias "xlSheetSetColHiddenA"(byval handle as SheetHandle, byval col as long, byval hidden as long) as long
declare function xlSheetGetMerge alias "xlSheetGetMergeA"(byval handle as SheetHandle, byval row as long, byval col as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlSheetSetMerge alias "xlSheetSetMergeA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long) as long
declare function xlSheetDelMerge alias "xlSheetDelMergeA"(byval handle as SheetHandle, byval row as long, byval col as long) as long
declare function xlSheetMergeSize alias "xlSheetMergeSizeA"(byval handle as SheetHandle) as long
declare function xlSheetMerge alias "xlSheetMergeA"(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlSheetDelMergeByIndex alias "xlSheetDelMergeByIndexA"(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetPictureSize alias "xlSheetPictureSizeA"(byval handle as SheetHandle) as long
declare function xlSheetGetPicture alias "xlSheetGetPictureA"(byval handle as SheetHandle, byval index as long, byval rowTop as long ptr, byval colLeft as long ptr, byval rowBottom as long ptr, byval colRight as long ptr, byval width as long ptr, byval height as long ptr, byval offset_x as long ptr, byval offset_y as long ptr) as long
declare sub xlSheetSetPicture alias "xlSheetSetPictureA"(byval handle as SheetHandle, byval row as long, byval col as long, byval pictureId as long, byval scale as double, byval offset_x as long, byval offset_y as long, byval pos as long)
declare sub xlSheetSetPicture2 alias "xlSheetSetPicture2A"(byval handle as SheetHandle, byval row as long, byval col as long, byval pictureId as long, byval width as long, byval height as long, byval offset_x as long, byval offset_y as long, byval pos as long)
declare function xlSheetGetHorPageBreak alias "xlSheetGetHorPageBreakA"(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetGetHorPageBreakSize alias "xlSheetGetHorPageBreakSizeA"(byval handle as SheetHandle) as long
declare function xlSheetGetVerPageBreak alias "xlSheetGetVerPageBreakA"(byval handle as SheetHandle, byval index as long) as long
declare function xlSheetGetVerPageBreakSize alias "xlSheetGetVerPageBreakSizeA"(byval handle as SheetHandle) as long
declare function xlSheetSetHorPageBreak alias "xlSheetSetHorPageBreakA"(byval handle as SheetHandle, byval row as long, byval pageBreak as long) as long
declare function xlSheetSetVerPageBreak alias "xlSheetSetVerPageBreakA"(byval handle as SheetHandle, byval col as long, byval pageBreak as long) as long
declare sub xlSheetSplit alias "xlSheetSplitA"(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetSplitInfo alias "xlSheetSplitInfoA"(byval handle as SheetHandle, byval row as long ptr, byval col as long ptr) as long
declare function xlSheetGroupRows alias "xlSheetGroupRowsA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval collapsed as long) as long
declare function xlSheetGroupCols alias "xlSheetGroupColsA"(byval handle as SheetHandle, byval colFirst as long, byval colLast as long, byval collapsed as long) as long
declare function xlSheetGroupSummaryBelow alias "xlSheetGroupSummaryBelowA"(byval handle as SheetHandle) as long
declare sub xlSheetSetGroupSummaryBelow alias "xlSheetSetGroupSummaryBelowA"(byval handle as SheetHandle, byval below as long)
declare function xlSheetGroupSummaryRight alias "xlSheetGroupSummaryRightA"(byval handle as SheetHandle) as long
declare sub xlSheetSetGroupSummaryRight alias "xlSheetSetGroupSummaryRightA"(byval handle as SheetHandle, byval right as long)
declare sub xlSheetClear alias "xlSheetClearA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlSheetInsertCol alias "xlSheetInsertColA"(byval handle as SheetHandle, byval colFirst as long, byval colLast as long) as long
declare function xlSheetInsertRow alias "xlSheetInsertRowA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long) as long
declare function xlSheetRemoveCol alias "xlSheetRemoveColA"(byval handle as SheetHandle, byval colFirst as long, byval colLast as long) as long
declare function xlSheetRemoveRow alias "xlSheetRemoveRowA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long) as long
declare function xlSheetCopyCell alias "xlSheetCopyCellA"(byval handle as SheetHandle, byval rowSrc as long, byval colSrc as long, byval rowDst as long, byval colDst as long) as long
declare function xlSheetFirstRow alias "xlSheetFirstRowA"(byval handle as SheetHandle) as long
declare function xlSheetLastRow alias "xlSheetLastRowA"(byval handle as SheetHandle) as long
declare function xlSheetFirstCol alias "xlSheetFirstColA"(byval handle as SheetHandle) as long
declare function xlSheetLastCol alias "xlSheetLastColA"(byval handle as SheetHandle) as long
declare function xlSheetDisplayGridlines alias "xlSheetDisplayGridlinesA"(byval handle as SheetHandle) as long
declare sub xlSheetSetDisplayGridlines alias "xlSheetSetDisplayGridlinesA"(byval handle as SheetHandle, byval show as long)
declare function xlSheetPrintGridlines alias "xlSheetPrintGridlinesA"(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintGridlines alias "xlSheetSetPrintGridlinesA"(byval handle as SheetHandle, byval print as long)
declare function xlSheetZoom alias "xlSheetZoomA"(byval handle as SheetHandle) as long
declare sub xlSheetSetZoom alias "xlSheetSetZoomA"(byval handle as SheetHandle, byval zoom as long)
declare function xlSheetPrintZoom alias "xlSheetPrintZoomA"(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintZoom alias "xlSheetSetPrintZoomA"(byval handle as SheetHandle, byval zoom as long)
declare function xlSheetGetPrintFit alias "xlSheetGetPrintFitA"(byval handle as SheetHandle, byval wPages as long ptr, byval hPages as long ptr) as long
declare sub xlSheetSetPrintFit alias "xlSheetSetPrintFitA"(byval handle as SheetHandle, byval wPages as long, byval hPages as long)
declare function xlSheetLandscape alias "xlSheetLandscapeA"(byval handle as SheetHandle) as long
declare sub xlSheetSetLandscape alias "xlSheetSetLandscapeA"(byval handle as SheetHandle, byval landscape as long)
declare function xlSheetPaper alias "xlSheetPaperA"(byval handle as SheetHandle) as long
declare sub xlSheetSetPaper alias "xlSheetSetPaperA"(byval handle as SheetHandle, byval paper as long)
declare function xlSheetHeader alias "xlSheetHeaderA"(byval handle as SheetHandle) as const zstring ptr
declare function xlSheetSetHeader alias "xlSheetSetHeaderA"(byval handle as SheetHandle, byval header as const zstring ptr, byval margin as double) as long
declare function xlSheetHeaderMargin alias "xlSheetHeaderMarginA"(byval handle as SheetHandle) as double
declare function xlSheetFooter alias "xlSheetFooterA"(byval handle as SheetHandle) as const zstring ptr
declare function xlSheetSetFooter alias "xlSheetSetFooterA"(byval handle as SheetHandle, byval footer as const zstring ptr, byval margin as double) as long
declare function xlSheetFooterMargin alias "xlSheetFooterMarginA"(byval handle as SheetHandle) as double
declare function xlSheetHCenter alias "xlSheetHCenterA"(byval handle as SheetHandle) as long
declare sub xlSheetSetHCenter alias "xlSheetSetHCenterA"(byval handle as SheetHandle, byval hCenter as long)
declare function xlSheetVCenter alias "xlSheetVCenterA"(byval handle as SheetHandle) as long
declare sub xlSheetSetVCenter alias "xlSheetSetVCenterA"(byval handle as SheetHandle, byval vCenter as long)
declare function xlSheetMarginLeft alias "xlSheetMarginLeftA"(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginLeft alias "xlSheetSetMarginLeftA"(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginRight alias "xlSheetMarginRightA"(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginRight alias "xlSheetSetMarginRightA"(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginTop alias "xlSheetMarginTopA"(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginTop alias "xlSheetSetMarginTopA"(byval handle as SheetHandle, byval margin as double)
declare function xlSheetMarginBottom alias "xlSheetMarginBottomA"(byval handle as SheetHandle) as double
declare sub xlSheetSetMarginBottom alias "xlSheetSetMarginBottomA"(byval handle as SheetHandle, byval margin as double)
declare function xlSheetPrintRowCol alias "xlSheetPrintRowColA"(byval handle as SheetHandle) as long
declare sub xlSheetSetPrintRowCol alias "xlSheetSetPrintRowColA"(byval handle as SheetHandle, byval print as long)
declare function xlSheetPrintRepeatRows alias "xlSheetPrintRepeatRowsA"(byval handle as SheetHandle, byval rowFirst as long ptr, byval rowLast as long ptr) as long
declare sub xlSheetSetPrintRepeatRows alias "xlSheetSetPrintRepeatRowsA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long)
declare function xlSheetPrintRepeatCols alias "xlSheetPrintRepeatColsA"(byval handle as SheetHandle, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlSheetSetPrintRepeatCols alias "xlSheetSetPrintRepeatColsA"(byval handle as SheetHandle, byval colFirst as long, byval colLast as long)
declare function xlSheetPrintArea alias "xlSheetPrintAreaA"(byval handle as SheetHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlSheetSetPrintArea alias "xlSheetSetPrintAreaA"(byval handle as SheetHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare sub xlSheetClearPrintRepeats alias "xlSheetClearPrintRepeatsA"(byval handle as SheetHandle)
declare sub xlSheetClearPrintArea alias "xlSheetClearPrintAreaA"(byval handle as SheetHandle)
declare function xlSheetGetNamedRange alias "xlSheetGetNamedRangeA"(byval handle as SheetHandle, byval name as const zstring ptr, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval scopeId as long, byval hidden as long ptr) as long
declare function xlSheetSetNamedRange alias "xlSheetSetNamedRangeA"(byval handle as SheetHandle, byval name as const zstring ptr, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval scopeId as long) as long
declare function xlSheetDelNamedRange alias "xlSheetDelNamedRangeA"(byval handle as SheetHandle, byval name as const zstring ptr, byval scopeId as long) as long
declare function xlSheetNamedRangeSize alias "xlSheetNamedRangeSizeA"(byval handle as SheetHandle) as long
declare function xlSheetNamedRange alias "xlSheetNamedRangeA"(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval scopeId as long ptr, byval hidden as long ptr) as const zstring ptr
declare function xlSheetTableSize alias "xlSheetTableSizeA"(byval handle as SheetHandle) as long
declare function xlSheetTable alias "xlSheetTableA"(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr, byval headerRowCount as long ptr, byval totalsRowCount as long ptr) as const zstring ptr
declare function xlSheetHyperlinkSize alias "xlSheetHyperlinkSizeA"(byval handle as SheetHandle) as long
declare function xlSheetHyperlink alias "xlSheetHyperlinkA"(byval handle as SheetHandle, byval index as long, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as const zstring ptr
declare function xlSheetDelHyperlink alias "xlSheetDelHyperlinkA"(byval handle as SheetHandle, byval index as long) as long
declare sub xlSheetAddHyperlink alias "xlSheetAddHyperlinkA"(byval handle as SheetHandle, byval hyperlink as const zstring ptr, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlSheetAutoFilter alias "xlSheetAutoFilterA"(byval handle as SheetHandle) as AutoFilterHandle
declare sub xlSheetApplyFilter alias "xlSheetApplyFilterA"(byval handle as SheetHandle)
declare sub xlSheetRemoveFilter alias "xlSheetRemoveFilterA"(byval handle as SheetHandle)
declare function xlSheetName alias "xlSheetNameA"(byval handle as SheetHandle) as const zstring ptr
declare sub xlSheetSetName alias "xlSheetSetNameA"(byval handle as SheetHandle, byval name as const zstring ptr)
declare function xlSheetProtect alias "xlSheetProtectA"(byval handle as SheetHandle) as long
declare sub xlSheetSetProtect alias "xlSheetSetProtectA"(byval handle as SheetHandle, byval protect as long)
declare sub xlSheetSetProtectEx alias "xlSheetSetProtectExA"(byval handle as SheetHandle, byval protect as long, byval password as const zstring ptr, byval enhancedProtection as long)
declare function xlSheetHidden alias "xlSheetHiddenA"(byval handle as SheetHandle) as long
declare function xlSheetSetHidden alias "xlSheetSetHiddenA"(byval handle as SheetHandle, byval hidden as long) as long
declare sub xlSheetGetTopLeftView alias "xlSheetGetTopLeftViewA"(byval handle as SheetHandle, byval row as long ptr, byval col as long ptr)
declare sub xlSheetSetTopLeftView alias "xlSheetSetTopLeftViewA"(byval handle as SheetHandle, byval row as long, byval col as long)
declare function xlSheetRightToLeft alias "xlSheetRightToLeftA"(byval handle as SheetHandle) as long
declare sub xlSheetSetRightToLeft alias "xlSheetSetRightToLeftA"(byval handle as SheetHandle, byval rightToLeft as long)
declare sub xlSheetSetAutoFitArea alias "xlSheetSetAutoFitAreaA"(byval handle as SheetHandle, byval rowFirst as long, byval colFirst as long, byval rowLast as long, byval colLast as long)
declare sub xlSheetAddrToRowCol alias "xlSheetAddrToRowColA"(byval handle as SheetHandle, byval addr as const zstring ptr, byval row as long ptr, byval col as long ptr, byval rowRelative as long ptr, byval colRelative as long ptr)
declare function xlSheetRowColToAddr alias "xlSheetRowColToAddrA"(byval handle as SheetHandle, byval row as long, byval col as long, byval rowRelative as long, byval colRelative as long) as const zstring ptr
declare sub xlSheetSetTabColor alias "xlSheetSetTabColorA"(byval handle as SheetHandle, byval color as long)
declare sub xlSheetSetTabRgbColor alias "xlSheetSetTabRgbColorA"(byval handle as SheetHandle, byval red as long, byval green as long, byval blue as long)
declare function xlSheetAddIgnoredError alias "xlSheetAddIgnoredErrorA"(byval handle as SheetHandle, byval rowFirst as long, byval colFirst as long, byval rowLast as long, byval colLast as long, byval iError as long) as long
declare sub xlSheetAddDataValidation alias "xlSheetAddDataValidationA"(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as const zstring ptr, byval value2 as const zstring ptr)
declare sub xlSheetAddDataValidationEx alias "xlSheetAddDataValidationExA"(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as const zstring ptr, byval value2 as const zstring ptr, byval allowBlank as long, byval hideDropDown as long, byval showInputMessage as long, byval showErrorMessage as long, byval promptTitle as const zstring ptr, byval prompt as const zstring ptr, byval errorTitle as const zstring ptr, byval error as const zstring ptr, byval errorStyle as long)
declare sub xlSheetAddDataValidationDouble alias "xlSheetAddDataValidationDoubleA"(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as double, byval value2 as double)
declare sub xlSheetAddDataValidationDoubleEx alias "xlSheetAddDataValidationDoubleExA"(byval handle as SheetHandle, byval type as long, byval op as long, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long, byval value1 as double, byval value2 as double, byval allowBlank as long, byval hideDropDown as long, byval showInputMessage as long, byval showErrorMessage as long, byval promptTitle as const zstring ptr, byval prompt as const zstring ptr, byval errorTitle as const zstring ptr, byval error as const zstring ptr, byval errorStyle as long)
#define xlSheetRemoveDataValidations removeDataValidationsA
declare function xlFontSize alias "xlFontSizeA"(byval handle as FontHandle) as long
declare sub xlFontSetSize alias "xlFontSetSizeA"(byval handle as FontHandle, byval size as long)
declare function xlFontItalic alias "xlFontItalicA"(byval handle as FontHandle) as long
declare sub xlFontSetItalic alias "xlFontSetItalicA"(byval handle as FontHandle, byval italic as long)
declare function xlFontStrikeOut alias "xlFontStrikeOutA"(byval handle as FontHandle) as long
declare sub xlFontSetStrikeOut alias "xlFontSetStrikeOutA"(byval handle as FontHandle, byval strikeOut as long)
declare function xlFontColor alias "xlFontColorA"(byval handle as FontHandle) as long
declare sub xlFontSetColor alias "xlFontSetColorA"(byval handle as FontHandle, byval color as long)
declare function xlFontBold alias "xlFontBoldA"(byval handle as FontHandle) as long
declare sub xlFontSetBold alias "xlFontSetBoldA"(byval handle as FontHandle, byval bold as long)
declare function xlFontScript alias "xlFontScriptA"(byval handle as FontHandle) as long
declare sub xlFontSetScript alias "xlFontSetScriptA"(byval handle as FontHandle, byval script as long)
declare function xlFontUnderline alias "xlFontUnderlineA"(byval handle as FontHandle) as long
declare sub xlFontSetUnderline alias "xlFontSetUnderlineA"(byval handle as FontHandle, byval underline as long)
declare function xlFontName alias "xlFontNameA"(byval handle as FontHandle) as const zstring ptr
declare sub xlFontSetName alias "xlFontSetNameA"(byval handle as FontHandle, byval name as const zstring ptr)
declare function xlFormatFont alias "xlFormatFontA"(byval handle as FormatHandle) as FontHandle
declare function xlFormatSetFont alias "xlFormatSetFontA"(byval handle as FormatHandle, byval fontHandle as FontHandle) as long
declare function xlFormatNumFormat alias "xlFormatNumFormatA"(byval handle as FormatHandle) as long
declare sub xlFormatSetNumFormat alias "xlFormatSetNumFormatA"(byval handle as FormatHandle, byval numFormat as long)
declare function xlFormatAlignH alias "xlFormatAlignHA"(byval handle as FormatHandle) as long
declare sub xlFormatSetAlignH alias "xlFormatSetAlignHA"(byval handle as FormatHandle, byval align as long)
declare function xlFormatAlignV alias "xlFormatAlignVA"(byval handle as FormatHandle) as long
declare sub xlFormatSetAlignV alias "xlFormatSetAlignVA"(byval handle as FormatHandle, byval align as long)
declare function xlFormatWrap alias "xlFormatWrapA"(byval handle as FormatHandle) as long
declare sub xlFormatSetWrap alias "xlFormatSetWrapA"(byval handle as FormatHandle, byval wrap as long)
declare function xlFormatRotation alias "xlFormatRotationA"(byval handle as FormatHandle) as long
declare function xlFormatSetRotation alias "xlFormatSetRotationA"(byval handle as FormatHandle, byval rotation as long) as long
declare function xlFormatIndent alias "xlFormatIndentA"(byval handle as FormatHandle) as long
declare sub xlFormatSetIndent alias "xlFormatSetIndentA"(byval handle as FormatHandle, byval indent as long)
declare function xlFormatShrinkToFit alias "xlFormatShrinkToFitA"(byval handle as FormatHandle) as long
declare sub xlFormatSetShrinkToFit alias "xlFormatSetShrinkToFitA"(byval handle as FormatHandle, byval shrinkToFit as long)
declare sub xlFormatSetBorder alias "xlFormatSetBorderA"(byval handle as FormatHandle, byval style as long)
declare sub xlFormatSetBorderColor alias "xlFormatSetBorderColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderLeft alias "xlFormatBorderLeftA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderLeft alias "xlFormatSetBorderLeftA"(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderRight alias "xlFormatBorderRightA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderRight alias "xlFormatSetBorderRightA"(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderTop alias "xlFormatBorderTopA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderTop alias "xlFormatSetBorderTopA"(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderBottom alias "xlFormatBorderBottomA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderBottom alias "xlFormatSetBorderBottomA"(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderLeftColor alias "xlFormatBorderLeftColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderLeftColor alias "xlFormatSetBorderLeftColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderRightColor alias "xlFormatBorderRightColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderRightColor alias "xlFormatSetBorderRightColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderTopColor alias "xlFormatBorderTopColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderTopColor alias "xlFormatSetBorderTopColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderBottomColor alias "xlFormatBorderBottomColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderBottomColor alias "xlFormatSetBorderBottomColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatBorderDiagonal alias "xlFormatBorderDiagonalA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonal alias "xlFormatSetBorderDiagonalA"(byval handle as FormatHandle, byval border as long)
declare function xlFormatBorderDiagonalStyle alias "xlFormatBorderDiagonalStyleA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonalStyle alias "xlFormatSetBorderDiagonalStyleA"(byval handle as FormatHandle, byval style as long)
declare function xlFormatBorderDiagonalColor alias "xlFormatBorderDiagonalColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetBorderDiagonalColor alias "xlFormatSetBorderDiagonalColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatFillPattern alias "xlFormatFillPatternA"(byval handle as FormatHandle) as long
declare sub xlFormatSetFillPattern alias "xlFormatSetFillPatternA"(byval handle as FormatHandle, byval pattern as long)
declare function xlFormatPatternForegroundColor alias "xlFormatPatternForegroundColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetPatternForegroundColor alias "xlFormatSetPatternForegroundColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatPatternBackgroundColor alias "xlFormatPatternBackgroundColorA"(byval handle as FormatHandle) as long
declare sub xlFormatSetPatternBackgroundColor alias "xlFormatSetPatternBackgroundColorA"(byval handle as FormatHandle, byval color as long)
declare function xlFormatLocked alias "xlFormatLockedA"(byval handle as FormatHandle) as long
declare sub xlFormatSetLocked alias "xlFormatSetLockedA"(byval handle as FormatHandle, byval locked as long)
declare function xlFormatHidden alias "xlFormatHiddenA"(byval handle as FormatHandle) as long
declare sub xlFormatSetHidden alias "xlFormatSetHiddenA"(byval handle as FormatHandle, byval hidden as long)
declare function xlAutoFilterGetRef alias "xlAutoFilterGetRefA"(byval handle as AutoFilterHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare sub xlAutoFilterSetRef alias "xlAutoFilterSetRefA"(byval handle as AutoFilterHandle, byval rowFirst as long, byval rowLast as long, byval colFirst as long, byval colLast as long)
declare function xlAutoFilterColumn alias "xlAutoFilterColumnA"(byval handle as AutoFilterHandle, byval colId as long) as FilterColumnHandle
declare function xlAutoFilterColumnSize alias "xlAutoFilterColumnSizeA"(byval handle as AutoFilterHandle) as long
declare function xlAutoFilterColumnByIndex alias "xlAutoFilterColumnByIndexA"(byval handle as AutoFilterHandle, byval index as long) as FilterColumnHandle
declare function xlAutoFilterGetSortRange alias "xlAutoFilterGetSortRangeA"(byval handle as AutoFilterHandle, byval rowFirst as long ptr, byval rowLast as long ptr, byval colFirst as long ptr, byval colLast as long ptr) as long
declare function xlAutoFilterGetSort alias "xlAutoFilterGetSortA"(byval handle as AutoFilterHandle, byval columnIndex as long ptr, byval descending as long ptr) as long
declare function xlAutoFilterSetSort alias "xlAutoFilterSetSortA"(byval handle as AutoFilterHandle, byval columnIndex as long, byval descending as long) as long
declare function xlFilterColumnIndex alias "xlFilterColumnIndexA"(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilterType alias "xlFilterColumnFilterTypeA"(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilterSize alias "xlFilterColumnFilterSizeA"(byval handle as FilterColumnHandle) as long
declare function xlFilterColumnFilter alias "xlFilterColumnFilterA"(byval handle as FilterColumnHandle, byval index as long) as const zstring ptr
declare sub xlFilterColumnAddFilter alias "xlFilterColumnAddFilterA"(byval handle as FilterColumnHandle, byval value as const zstring ptr)
declare function xlFilterColumnGetTop10 alias "xlFilterColumnGetTop10A"(byval handle as FilterColumnHandle, byval value as double ptr, byval top as long ptr, byval percent as long ptr) as long
declare sub xlFilterColumnSetTop10 alias "xlFilterColumnSetTop10A"(byval handle as FilterColumnHandle, byval value as double, byval top as long, byval percent as long)
declare function xlFilterColumnGetCustomFilter alias "xlFilterColumnGetCustomFilterA"(byval handle as FilterColumnHandle, byval op1 as long ptr, byval v1 as const zstring ptr ptr, byval op2 as long ptr, byval v2 as const zstring ptr ptr, byval andOp as long ptr) as long
declare sub xlFilterColumnSetCustomFilter alias "xlFilterColumnSetCustomFilterA"(byval handle as FilterColumnHandle, byval op as long, byval cond as const zstring ptr)
declare sub xlFilterColumnSetCustomFilterEx alias "xlFilterColumnSetCustomFilterExA"(byval handle as FilterColumnHandle, byval op1 as long, byval v1 as const zstring ptr, byval op2 as long, byval v2 as const zstring ptr, byval andOp as long)
declare sub xlFilterColumnClear alias "xlFilterColumnClearA"(byval handle as FilterColumnHandle)

end extern
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

example.bas

Code: Select all

#include "libxl.bi"
#inclib "xl"
function main() as long
	Dim as BookHandle book = xlCreateBook()
	if book then
		Dim as SheetHandle sheet = xlBookAddSheet(book, "Sheet1", NULL)
		if sheet then
			xlSheetWriteStr(sheet, 2, 1, wstr("Hello, World !"), NULL)
			xlSheetWriteNum(sheet, 3, 1, 1000, NULL)
		end if
		xlBookSave(book, wstr("example.xls"))
		xlBookRelease(book)
	end if
	return 0
end function

main()
jevans4949
Posts: 1186
Joined: May 08, 2006 21:58
Location: Crewe, England

Re: any lib to read excel XLS/XLSX files?

Post by jevans4949 »

For XLS, there is a thing called disphelper, with include files in the Feebasic distribution. Trouble is, I've found no documentation (apart from the code itself). I recently looked into writing something myself, but got diverted into something else. Microsoft have now published the format of COM files, so it should be possible to do something.

XLSX is basically an XML file, and there is software to read XML. Although this means it's basically text, undertanding the tags is a whole 'nother story.

[Crosed with srvaldez, but different information]
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

I think disphelper uses COM if I am not mistaken and the OP asked for non-COM
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

invoice.bas

Code: Select all

#include once "libxl.bi"
#inclib "xl"
function main() as long
	Dim As BookHandle book = xlCreateXMLBook()
	if book then
		Dim As FontHandle boldFont
		Dim As FontHandle titleFont
		Dim As FormatHandle titleFormat
		Dim As FormatHandle headerFormat
		Dim As FormatHandle descriptionFormat
		Dim As FormatHandle amountFormat
		Dim As FormatHandle totalLabelFormat
		Dim As FormatHandle totalFormat
		Dim As FormatHandle signatureFormat
		Dim As SheetHandle sheet
		
		boldFont = xlBookAddFont(book, 0)
		xlFontSetBold(boldFont, 1)
		titleFont = xlBookAddFont(book, 0)
		xlFontSetName(titleFont, "Arial Black")
		xlFontSetSize(titleFont, 16)
		titleFormat = xlBookAddFormat(book, 0)
		xlFormatSetFont(titleFormat, titleFont)
		headerFormat = xlBookAddFormat(book, 0)
		xlFormatSetAlignH(headerFormat, ALIGNH_CENTER)
		xlFormatSetBorder(headerFormat, BORDERSTYLE_THIN)
		xlFormatSetFont(headerFormat, boldFont)
		xlFormatSetFillPattern(headerFormat, FILLPATTERN_SOLID)
		xlFormatSetPatternForegroundColor(headerFormat, COLOR_TAN)
		descriptionFormat = xlBookAddFormat(book, 0)
		xlFormatSetBorderLeft(descriptionFormat, BORDERSTYLE_THIN)
		amountFormat = xlBookAddFormat(book, 0)
		xlFormatSetNumFormat(amountFormat, NUMFORMAT_CURRENCY_NEGBRA)
		xlFormatSetBorderLeft(amountFormat, BORDERSTYLE_THIN)
		xlFormatSetBorderRight(amountFormat, BORDERSTYLE_THIN)
		totalLabelFormat = xlBookAddFormat(book, 0)
		xlFormatSetBorderTop(totalLabelFormat, BORDERSTYLE_THIN)
		xlFormatSetAlignH(totalLabelFormat, ALIGNH_RIGHT)
		xlFormatSetFont(totalLabelFormat, boldFont)
		totalFormat = xlBookAddFormat(book, 0)
		xlFormatSetNumFormat(totalFormat, NUMFORMAT_CURRENCY_NEGBRA)
		xlFormatSetBorder(totalFormat, BORDERSTYLE_THIN)
		xlFormatSetFont(totalFormat, boldFont)
		xlFormatSetFillPattern(totalFormat, FILLPATTERN_SOLID)
		xlFormatSetPatternForegroundColor(totalFormat, COLOR_YELLOW)
		signatureFormat = xlBookAddFormat(book, 0)
		xlFormatSetAlignH(signatureFormat, ALIGNH_CENTER)
		xlFormatSetBorderTop(signatureFormat, BORDERSTYLE_THIN)
		sheet = xlBookAddSheet(book, "Invoice", 0)
		if sheet then
			xlSheetWriteStr(sheet, 2, 1, "Invoice No. 3568", titleFormat)
			xlSheetWriteStr(sheet, 4, 1, "Name: John Smith", NULL)
			xlSheetWriteStr(sheet, 5, 1, "Address: San Ramon, CA 94583 USA", 0)
			xlSheetWriteStr(sheet, 7, 1, "Description", headerFormat)
			xlSheetWriteStr(sheet, 7, 2, "Amount", headerFormat)
			xlSheetWriteStr(sheet, 8, 1, "Ball-Point Pens", descriptionFormat)
			xlSheetWriteNum(sheet, 8, 2, 85, amountFormat)
			xlSheetWriteStr(sheet, 9, 1, "T-Shirts", descriptionFormat)
			xlSheetWriteNum(sheet, 9, 2, 150, amountFormat)
			xlSheetWriteStr(sheet, 10, 1, "Tea cups", descriptionFormat)
			xlSheetWriteNum(sheet, 10, 2, 45, amountFormat)
			xlSheetWriteStr(sheet, 11, 1, "Total:", totalLabelFormat)
			xlSheetWriteFormula(sheet, 11, 2, "=SUM(C9:C11)", totalFormat)
			xlSheetWriteStr(sheet, 14, 2, "Signature", signatureFormat)
			xlSheetSetCol(sheet, 1, 1, 40, 0, 0)
			xlSheetSetCol(sheet, 2, 2, 15, 0, 0)
		end if
		if xlBookSave(book, "invoice.xlsx") then
			print
			print "File invoice.xlsx has been created."
		end if
		xlBookRelease(book)
	end if
	print "Press any key to exit..."
	sleep
	return 0
end function

main()
srvaldez
Posts: 3377
Joined: Sep 25, 2005 21:54

Re: any lib to read excel XLS/XLSX files?

Post by srvaldez »

there's a library to read xls files no xlsx and no writing http://libxls.sourceforge.net
marcov
Posts: 3456
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: any lib to read excel XLS/XLSX files?

Post by marcov »

There are more such libs. For Free Pascal there is e.g. fpspreadsheet.

I doubt it is usable with FB, I mainly post the URL for the supported feature matrix. Anything but full excel will always only support a subset. This can be fine if you only process autogenerated sheets, but heavily calculating, every dirty trick in the book sheets will be a challenge with any non Excel-via-COM library.
oyster
Posts: 274
Joined: Oct 11, 2005 10:46

Re: any lib to read excel XLS/XLSX files?

Post by oyster »

Thanks guys.
When I search Totalcommander viewer plugins, I found http://totalcmd.net/plugring/oilister.html, in which "Oracle Outside In Technology" is used. However
1. It seems that we can use "Oracle Outside In Technology" in application for study/free only.
2. I did not find detailed document of "Oracle Outside In Technology" for develepment
Post Reply