之前一直是使用XLSReadWriteII4,今天更新到XLSReadWriteII5,測試了一下,發現一些操作變化比較大,現將XLSReadWriteII5的使用示例寫一下,以下是代碼和生成的excel表格的效果:
1 procedure TForm1.Button1Click(Sender: TObject); 2 var 3 i, n: Integer; 4 XLS: TXLSReadWriteII5; // 引用XLSReadWriteII5, Xc12DataStyleSheet5, ShellAPI 5 begin 6 XLS := TXLSReadWriteII5.Create(nil); 7 try 8 XLS.Clear; 9 XLS.FileName := ExtractFilePath(paramstr(0)) + 'temp.xls'; 10 for i := 0 to 9 do 11 XLS.Sheets[0].AsString[i, 0] := '標題' + IntToStr(i + 1); 12 for i := 0 to 9 do 13 for n := 1 to 19 do 14 XLS.Sheets[0].AsString[i, n] := IntToStr(i + 1) + ':' + IntToStr(n); 15 16 for i := 0 to 9 do // XLS.Sheets[0].LastCol do // 從第一列到最后一列 17 begin 18 for n := 0 to 19 do // 從第一行到最后一行 19 begin 20 XLS.Sheets[0].Range.Items[i, n, i, n].BorderOutlineStyle := cbsThin; 21 XLS.Sheets[0].Range.Items[i, n, i, n].BorderOutlineColor := 0; // 黑色#0 22 if n = 0 then 23 begin 24 XLS.Sheets[0].Cell[i, n].CellColorRGB := 16744448; // 橘黃#FF8000 25 XLS.Sheets[0].Cell[i, n].FontColor := 16777215; // 白色#FFFFFF 26 end 27 else 28 XLS.Sheets[0].Cell[i, n].CellColorRGB := 16777165; // 杏仁灰#FFFFCD 29 end; 30 XLS.Sheets[0].AutoWidthCol(i); // 每列為自動寬度 31 end; 32 XLS.Write; 33 ShellExecute(0, 'Open', PChar(ExtractFilePath(paramstr(0)) + 'temp.xls') 34 , nil, nil, SW_SHOW); 35 finally 36 XLS.Free; 37 end; 38 end;
轉自:http://www.offeu.com/www/index_id_144.html