寫下lazarus裏調用com組件。這個大致和vb6裏面的寫法差不多。上手挺快。也是隻適用於win平臺。下面我就寫下讀取excel相關數據來舉個例子。
program excel;
uses comobj,sysutils,Variants;
var xlapp :olevariant;
wb:variant;
sht:Variant;
cell:variant;
i:byte;
path: variant;
begin
path:='C:\Users\FanXiaoLei\Desktop\1.xlsm';
xlapp:=CreateOleObject('Excel.Application');
try
xlapp.visible :=false;
xlapp.DisplayAlerts := False;
wb:=xlapp.WorkBooks.Open(path); //取工作簿
writeln(wb.Name+Utf8Decode('工作簿有')+IntToStr(wb.Sheets.Count)+Utf8Decode('個工作表!'));
for i:=1 to wb.Sheets.Count do
begin
sht:=wb.Sheets.Item(i); //取表
writeln('Sheet '+IntToStr(i)+' name:'+sht.Name);
cell:= sht.Range('A2'); //取單元格
writeln(sht.Name+Utf8Decode('的')+cell.Address+Utf8Decode('單元格值爲:')+VarToStr(cell.Value));
end;
finally
wb.Close;
xlapp.Quit;
xlapp:=Unassigned;
end;
readln;
end.
運行結果: