procedure Tdrkp.Button1Click(Sender: TObject);
var
excelx,excely:string;
excelapp,workbook:olevariant;
excelrowcount,i:integer;
begin
{if (savedialog1.Execute) then
begin
try
lianjie.ADOCon.Close;
lianjie.ADOCon.Provider:='Microsoft.Jet.OLEDB.4.0;Data Source='+SaveDialog1.FileName+';Extended' +
'Properties="Excel 8.0;HDR=Yes;";Persist Security Info=False' ;
lianjie.ADOCon.Connected:=false ;
lianjie.ADOCon.Connected:=true;
sql:= 'insert into yy01 select * from ' +
'OpenDataSource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+SaveDialog1.FileName+';Extended Properties="Excel 5.0;HDR=Yes;";Persist Security Info=False'')...sheet1$' ;
lianjie.ADOCon.Execute(sql);
Application.MessageBox('导出数据成功 !', PChar('数据导入导出提示'), MB_OK +
MB_ICONINFORMATION + MB_TOPMOST);
except
Application.MessageBox('导出数据失败 !', PChar('数据导入导出提示'), MB_OK +
MB_ICONINFORMATION + MB_TOPMOST); } try
ExcelApp := CreateOleObject('Excel.Application');
workbook:= excelapp.Workbooks.Open(opendialog1.FileName);
excelapp.Visible:=false;
excelrowcount:=workbook.worksheets[1].usedrange.rows.count;
for i:=1 to excelrowcount+1 do
begin
excelx:=excelapp.cells[i,1].value;
excely:=excelapp.cells[i,2].value;
if ((excelapp.Cells[i,1].Value = '') and (ExcelApp.Cells[i,2].Value = '')) then
exit
else
with lianjie.ado2 do
begin
close;
sql.Clear;
sql.add('insert into yy01(''登记号码'',''出勤状态'',''对应时间'') values(:登记号码,:出勤状态,:对应时间)');
Parameters.parambyname('登记号码').value := excelx;
Parameters.parambyname('出勤状态').value := excelx;
Parameters.parambyname('对应时间').value := excelx;
execsql;
end;
end;
finally
workbook.close;
excelapp.quit;
ExcelApp := Unassigned;
WorkBook := Unassigned;
end;
end;
end.//无效的类别字符!!!
var
excelx,excely:string;
excelapp,workbook:olevariant;
excelrowcount,i:integer;
begin
{if (savedialog1.Execute) then
begin
try
lianjie.ADOCon.Close;
lianjie.ADOCon.Provider:='Microsoft.Jet.OLEDB.4.0;Data Source='+SaveDialog1.FileName+';Extended' +
'Properties="Excel 8.0;HDR=Yes;";Persist Security Info=False' ;
lianjie.ADOCon.Connected:=false ;
lianjie.ADOCon.Connected:=true;
sql:= 'insert into yy01 select * from ' +
'OpenDataSource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+SaveDialog1.FileName+';Extended Properties="Excel 5.0;HDR=Yes;";Persist Security Info=False'')...sheet1$' ;
lianjie.ADOCon.Execute(sql);
Application.MessageBox('导出数据成功 !', PChar('数据导入导出提示'), MB_OK +
MB_ICONINFORMATION + MB_TOPMOST);
except
Application.MessageBox('导出数据失败 !', PChar('数据导入导出提示'), MB_OK +
MB_ICONINFORMATION + MB_TOPMOST); } try
ExcelApp := CreateOleObject('Excel.Application');
workbook:= excelapp.Workbooks.Open(opendialog1.FileName);
excelapp.Visible:=false;
excelrowcount:=workbook.worksheets[1].usedrange.rows.count;
for i:=1 to excelrowcount+1 do
begin
excelx:=excelapp.cells[i,1].value;
excely:=excelapp.cells[i,2].value;
if ((excelapp.Cells[i,1].Value = '') and (ExcelApp.Cells[i,2].Value = '')) then
exit
else
with lianjie.ado2 do
begin
close;
sql.Clear;
sql.add('insert into yy01(''登记号码'',''出勤状态'',''对应时间'') values(:登记号码,:出勤状态,:对应时间)');
Parameters.parambyname('登记号码').value := excelx;
Parameters.parambyname('出勤状态').value := excelx;
Parameters.parambyname('对应时间').value := excelx;
execsql;
end;
end;
finally
workbook.close;
excelapp.quit;
ExcelApp := Unassigned;
WorkBook := Unassigned;
end;
end;
end.//无效的类别字符!!!
解决方案 »
- !!又等了三天,终于又有30分了,还是那个小问题没解决!!
- 组件为什么装不上去?
- 请各位大大看一下
- 关于使用PowerPoint
- 关于installshield6.22的小问题
- 请问用BDE访问oracle9.0
- 怎样能用外网主机发信息到内网,然后内网可以收到?(高手!请帮忙啊!!)
- 自编Dll,调用出错的一个很简单的问题,
- 急需dbgrid排序的源码!
- 如何控制FORM启动时将所有的combobox itemindex全设为0
- 给我一个学生作业,不用太复杂![email protected] 谢谢 超市商品管理系统!(sql server2000)的
- ▲▲▲谁能帮我调下面的代码,各个按钮的功能?▲▲▲
try
ExcelApp := CreateOleObject('Excel.Application');
workbook:= excelapp.Workbooks.Open(opendialog1.FileName);
Parameters.parambyname('出勤状态').value := excelx;
Parameters.parambyname('对应时间').value := excelx;===
这3个值是设置了一样的值 excelx
对应时间 时间类型
登记号码,出勤状态 字符类型估计类型不匹配