You've already forked lazarus-ccr
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8341 8e941d3f-bd1b-0410-a28a-d453659cc2b4
50 lines
1.0 KiB
ObjectPascal
50 lines
1.0 KiB
ObjectPascal
program comments_demo_read;
|
|
|
|
uses
|
|
SysUtils, fpspreadsheet, fpstypes, fpsutils, fpsallformats;
|
|
const
|
|
FILE_NAME = 'test';
|
|
|
|
function RemoveLinebreaks(s: String): String;
|
|
var
|
|
i: Integer;
|
|
begin
|
|
SetLength(Result, Length(s));
|
|
for i := 1 to Length(s) do
|
|
if s[i] in [#10, #13] then
|
|
Result[i] := ' '
|
|
else
|
|
Result[i] := s[i];
|
|
end;
|
|
|
|
var
|
|
workbook: TsWorkbook;
|
|
worksheet: TsWorksheet;
|
|
cmnt: PsComment;
|
|
txt: string;
|
|
i: Integer;
|
|
begin
|
|
workbook := TsWorkbook.Create;
|
|
try
|
|
workbook.ReadFromFile(FILE_NAME + '.xlsx', sfOOXML);
|
|
for i := 0 to workbook.GetWorksheetCount-1 do
|
|
begin
|
|
worksheet := workbook.GetWorksheetByIndex(i);
|
|
WriteLn('Worksheet "', worksheet.Name, '":');
|
|
for cmnt in worksheet.Comments do
|
|
begin
|
|
txt := RemoveLinebreaks(cmnt^.Text);
|
|
WriteLn(' Comment in cell ', GetCellString(cmnt^.Row, cmnt^.Col), ': "', txt, '"');
|
|
end;
|
|
WriteLn;
|
|
end;
|
|
finally
|
|
workbook.Free;
|
|
end;
|
|
|
|
WriteLn;
|
|
WriteLn('Press ENTER to close...');
|
|
ReadLn;
|
|
end.
|
|
|