:: MVP ::
|
|
:: RSS ::
|
|
|
TXLSFile v4.0 (D3-XE7)
|
TXLSFile это Delphi-библиотека для чтения и записи .xls-файлов напрямую без установленного Microsoft Office. Особенности:
- Быстродействие - скорость чтения и записи примерно 75 000 ячеек в секунду;
- TXLSFile не требует установленного Microsoft Excel;
- TXLSFile поддерживает формат MS Excel 97, 2000, XP, 2003 (BIFF8);
- XLS-файлы созданные с помощью TXLSFile могут быть открыты в Excel 2007;
- XLS-файлы созданные с помощью TXLSFile могут быть открыты в OpenOffice;
- Исходные тексты совместимы с Delphi 3-XE2;
- XLSExport компоненты поставляются вместе с библиотекой TXLSFile;
- Зарегистрированная версия содержит в себе полное описание продукта вместе с небольшим количеством примеров;
- TXLSFile также содержит в себе функции для экспорта данных в HTML и TXT файлы.
Пример использования
type
TCells = class(XLSWorkbook.TCells)
end;
implementation
procedure TForm1.Button1Click(Sender: TObject);
var
xf: TXLSFile;
begin
xf := TXLSFile.Create;
try
xf.OpenFile('in.xls');
// Вставка новой строки после второй строки
TCells(xf.Workbook.SheetByName('Sheet1').Cells).InternalInsertRow(1);
xf.SaveAs('out.xls');
finally
xf.Destroy;
end;
end;
|
Скачать. |
545kb |
ZIP |
|
NativeExcel v3.0.21 (D4-D10.1 Berlin)
|
Пакет для разработчиков программных продуктов, которым требуется создавать новые документы Excel, либо работать с уже существующими,
без использования стандартного компонента OLE Excel.
|
Скачать. |
1.1Mb |
ZIP |
|
XLSReadWriteII 5.20.62 (D10.2)
|
Компоненты для прямого доступ к файлам Excel (XLSX, без использования Excel).
Пример использования
// Получение списка страниц
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
s: string;
begin
s := '';
with XLSReadWriteII51 do
begin
LoadFromFile('d:\test.xlsx');
for i := 0 to Count-1 do
s := s + Sheets[i].Name + ^M;
end;
ShowMessage(s);
end;
// Поиск текста
procedure TForm1.Button1Click(Sender: TObject);
var
Sheet, Col, Row, TextPos: Integer;
Text: string;
begin
with XLSReadWriteII51 do
begin
LoadFromFile('d:\test.xlsx');
BeginFindText;
while True do
begin
if FindText('#', False) then
begin
GetFindData(Sheet, Col, Row, TextPos, Text);
ShowMessage(
Format(
'Лист: %d'^M'Колонка: %d'^M'Строка: %d'^M'Позиция в тексте: %d'^M'Текст: %s',
[Sheet, Col+1, Row+1, TextPos, Text]
)
);
end
else
if MessageDlg('Поиск в документе завершен. Начать сначала?',
mtConfirmation, mbYesNo, 0) = mrYes then
BeginFindText
else
Break;
end;
end;
end;
// Поиск области ячеек, занятых пользовательскими данными
uses
Xc12Utils5;
procedure TForm1.Button1Click(Sender: TObject);
var
CellArea: TXLSCellArea;
begin
with XLSReadWriteII51 do
begin
LoadFromFile('d:\test.xlsx');
// Sheets[0].CalcDimensions;
// Sheets[0].CalcDimensionsEx;
Sheets[0].MMUCells.CalcDimensions;
CellArea := Sheets[0].MMUCells.Dimension;
ShowMessage(
Format(
'Столбцы: с %d по %d'^M'Строки: с %d по %d',
[CellArea.Col1+1, CellArea.Col2+1, CellArea.Row1+1, CellArea.Row2+1]
)
);
end;
end;
// Добавление формулы
procedure TForm1.Button1Click(Sender: TObject);
begin
with XLSReadWriteII51 do
begin
LoadFromFile('d:\test.xlsx');
Sheets[0].MMUCells.AddFormula(0, 0, 'B4+D6', 0);
SaveToFile('d:\test_out.xlsx');
end;
end;
// Обращение к ячейке
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
with XLSReadWriteII51 do
begin
LoadFromFile('d:\test.xlsx');
Sheets[0].MMUCells.GetString(0, 0, s);
ShowMessage(s);
Sheets[0].AsString[0, 0] := '1';
ShowMessage(Sheets[0].AsString[0, 0]);
SaveToFile('d:\test_out.xlsx');
end;
end;
|
Скачать. |
4.4Mb |
ZIP |
|
|