想作一个程序,将每天的Excel日报表导入数据库,经过修改排序等工作,输出Excel旬报表和月报表。请问如何进行。(关键是不会导入导出)http://expert.csdn.net/Expert/topic/1604/1604262.xml?temp=.2761499 上的两段程序注释太少看不明白。(以前没接触过这方面的东西)
直接用bde或者ado连接excel文件时显示“测试连接失败,因为初始化提供程序时发生错误[Microsoft][ODBC Excel Driver]外部表不是预期的格式。”
直接在Access中用“文件——获取外部数据——导入”提示:向导无法访问文件‘×××××××××’中的信息,请确定文件存在且格式正确。请哪位大侠能帮我好好讲讲,或给我发一个简单的例子。[email protected]
谢了!!
直接用bde或者ado连接excel文件时显示“测试连接失败,因为初始化提供程序时发生错误[Microsoft][ODBC Excel Driver]外部表不是预期的格式。”
直接在Access中用“文件——获取外部数据——导入”提示:向导无法访问文件‘×××××××××’中的信息,请确定文件存在且格式正确。请哪位大侠能帮我好好讲讲,或给我发一个简单的例子。[email protected]
谢了!!
解决方案 »
- 为什么用ADO的控件,POST之后的的简单机制是什么?
- 问个难度问题,大家请进!!!
- 如何实现这样的功能,直接在Windows桌面上显示一些字符?
- 请问 ServerSocket 的 servertype 的stNonBlocking 和 stThreadBlocking 有什么区别??????
- ███【★】█★█【★★★★★热烈庆祝★★★★★】█★█【★】███↑--███【★】█★█【★天津聚会CS★DN圆满结束★】█★█【
- 如何在delphi中把变量值传递给xsl中的变量?
- 推荐一款最新实用软件
- 大侠,我用ExcelApplication打开一个Excel文件后,当Excel关闭后,我怎么知道它关闭了。
- D5开发人员指南中的自动化服务器就是COM吗?
- 请问那里有d5用的opengl aux库及其声明头文件
- Oracle8中Blob字段的读写
- 关于事志文件的问题?
1。可以把excel做为数据库
2。可以把access数据库导出excel表给你个例子看看
procedure Twmbx.Button3Click(Sender: TObject);
var
e:variant;
i,j:integer;
begin
e:=createoleobject('excel.application');
e.visible:=true;
e.caption:='网慢';
e.workbooks.add; e.activesheet.rows[1].font.bold:=true; //第一行列名属性设置;
e.activesheet.rows[1].font.color:=clred;
for j:=0 to data.wmbxb.FieldCount-2 do //第一行列名;
begin
e.cells[1,j+1].value:=data.wmbxb.Fields[j].FieldName ;
next;
end; data.wmbxb.first; //导出内容;
for i:=1 to data.wmbxb.recordcount do
begin
begin
for j:=0 to data.wmbxb.FieldCount-2 do //-2 代表把back列放弃;
begin
e.cells[i+2,j+1].value:=data.wmbxb.Fields[j].AsString ;
next;
end;
end;
data.wmbxb.next;
next;
end;
ShowMessage('数据导出成功');
e.workbooks.close;
e.quit;
end;
http://expert.csdn.net/Expert/topic/1909/1909498.xml?temp=4.985988E-03
直接用bde或者ado通过ODBC连接excel文件时显示“测试连接失败,因为初始化提供程序时发生错误[Microsoft][ODBC Excel Driver]外部表不是预期的格式。”
select * from 2003-07-03服务类型日月年;"2003-07-03服务类型日月年"是excel表里sheet的名字
http://218.56.9.158/default.aspx
下载基地->动态调用Excel数据表;
下载一下参考吧。注意事项:
在用ado将excel连上数据表后,调试必须退出delphi,在外边直接执行exe,否则报错。
procedure TForm1.Button5Click(Sender: TObject);
var
ExcelApp,MyWorkBook,mysheet:Variant;
i :byte;
s: string;
begin
try
ExcelApp:=CreateOleObject('Excel.Application');
MyWorkBook:=CreateOleobject('Excel.Sheet');
//? MyWorkBook:=ExcelApp.workbooks.open('C:\Book1.xls');
except
on Exception do raise exception.Create('无法打开Xls文件,请确认已 经安装EXCEL')
end;
ExcelApp.Visible := true;
//? mysheet:=MyWorkBook.WorkSheets[1].name;MyworkBook:=ExcelApp.workBooks.Add;//在此处插入读数据库及写Excel文档的代码
//其中写Excel文档的关键语句如下:
Myworkbook.worksheets[1].range['A1:D1'].Merge(True);
Myworkbook.worksheets[1].range['A1:D2'].HorizontalAlignment := $FFFFEFF4;
MyWorkBook.WorkSheets[1].Cells[1,1].Value := 'YourTitle';i := 2;
MyWorkBook.WorkSheets[1].Cells[i,1].Value := 'yourCaption1';
MyWorkBook.WorkSheets[1].Cells[i,2].Value := 'yourCaption2';
MyWorkBook.WorkSheets[1].Cells[i,3].Value := 'yourCaption3';
MyWorkBook.WorkSheets[1].Cells[i,4].Value := 'yourCaption4';
Myworkbook.worksheets[1].Range['A1:D2'].Font.Color := clBlue;
Myworkbook.worksheets[1].Range['A1:D1'].Font.Name := '隶书';
Myworkbook.worksheets[1].Range['A1:D1'].Font.Size := 18;
i := 3;
table1.close;
table1.open;
table1.First;
while not table1.eof do begin
MyWorkBook.WorkSheets[1].Cells[i,1].Value := table1.FieldByName('au_id').AsString;
MyWorkBook.WorkSheets[1].Cells[i,2].Value := table1.FieldByName('royaltyper').AsInteger;
MyWorkBook.WorkSheets[1].Cells[i,3].Value := table1.FieldByName('au_ord').AsInteger;
MyWorkBook.WorkSheets[1].Cells[i,4].Value := table1.FieldByName('title_id').AsString;
Inc(i);
table1.Next
end;
ExcelApp.Visible := true;s := 'A3:D'+ IntToStr(i-1);//设定字体. 栏宽等
s := 'A1:D'+ IntToStr(i-1);
Myworkbook.worksheets[1].Columns[1].ColumnWidth := 20;
Myworkbook.worksheets[1].Columns[4].ColumnWidth := 25;
Myworkbook.worksheets[1].Rows[1].RowHeight := 50;
Myworkbook.worksheets[1].Rows[1].VerticalAlignment := $FFFFEFF4;Myworkbook.worksheets[1].Range[s].Font.Name := '仿宋';
s := 'A2:D'+ IntToStr(i-1);
Myworkbook.worksheets[1].Range[s].Borders.LineStyle := 1;
//页面设置
MyworkBook.WorkSheets[1].PageSetup.CenterHorizontally := true;
Myworkbook.worksheets[1].pagesetup.PrintTitleRows := 'A1';
//不能设置 papersize 属性, 原因不明
//MyworkBook.WorkSheets[1].PageSetup.PaperSize := $9;try
MyWorkBook.saveas('c:\' + Edit1.Text + '.xls');
MyWorkBook.close;
except //当存为一个已有的文档而又不覆盖时将
MyWorkBook.close; //产生一个例外
end;
ExcelApp.Quit;
ExcelApp:=Unassigned; //释放VARIANT变量end;把excel里的输到access里,反过来就行了