[h1]不行呀,总出错,我把详细信息那来了,高手帮看看[/h1]
[h2]因为有23口井的数据,一个为汇总excel文件,每个sheet记录一口井的数据(井一sheet名为MUDI 1,井二sheet名为MUDI 2,以此类推),
另有若干日报excel,将每日的日报excel文件(一个sheet,有23行,每行记录一口井的数据),我用如下程序实现将日报中的各口井数据,
导到汇总excel文件的相应位置上,主要程序如下:
for i:=1 to 23 do//23口井
begin
For j:=1 to ExcelWorkBook2.Worksheets.Count do
begin //strtoint()是用来取井数的,从一一直到23
if i=strtoint(trim(copy(trim((ExcelWorkBook2.Worksheets.Item[j] as _WorkSheet).Name),6,2))) then//将日报中井号的数据,拷到对应上的动态excel sheet下
begin
ExcelWorksheet2.ConnectTo(ExcelWorkBook2.Worksheets.Item[j] as _WorkSheet);
ExcelWorksheet2.Activate;//将要导出数据的日报sheet设为缺省的打开sheet.
//下面是程序判断excel中是否为空的字段(用高守的方法)
ADOQuery1.Close;
ADOQuery1.SQL.Clear; //下面是取打开的sheet名
ADOQuery1.sql.add('select * from [(ExcelWorkBook2.Worksheets.Item as _WorkSheet).Name]');
ADOQuery1.open ;//到此处出错,错误信息为:Missing Connection or ConnectionString
end;
end;
if trim(copy(trim(excelworksheet1.cells.item[7+i,1]),6,2))='1' then //如果井号是1
begin
ADOQuery1.append ;
ADOQuery1.FieldValues['1']:='哈哈哈';//添加赋值语句
ADOQuery1.Post; //保存
end
else if trim(copy(trim(excelworksheet1.cells.item[7+i,1]),6,2))='2' then //如果井号是2
begin
end;
end;[/h2]