急,如何挂接EXCEL属性、方法?(100分)

  • 主题发起人 主题发起人 katez
  • 开始时间 开始时间
K

katez

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟正在做一个报表的程序,挺急的。要将数据库中的数据输出到EXCEL。
小弟是这样做的,在程序中建立EXCEL类,如下:
var
Excelapp,Myworkbook:Variant;
begin
Excelapp:=CreateOleObject('excel.application');
Myworkbook:=CreateOleObject('excel.sheet');
Myworkbook:=Excelapp.workbooks.add;
myworkbook.worksheets[1].cells[2,3].value:='计算机类统计报表';
...
end;
我可以实现往表中写数据,但不知道如何实现其它功能,如页面设置、换页、表格线
的绘制等等,谁有这方面的资料,请发给我,我的Email:katez@163.com,本人将不
胜感激。
 
大家给点资料不行吗?
 
在Excel中进行宏录制,然后把宏的VBA考到Delphi中,将所有的=改为:=,将所有的
()改为[],就可以啦。
 
难道这个问题这么难回答,求求各位大侠!!
 
我给你发一个例子过来.呵呵,多少分?email留下.
 
对zhangkan,我的Email:katez@163.com,你想要多少分?给你60分如何?
你也是姓张是吧,咱俩是本家,自己人决不会亏待你。
对TYZhang,我按你所说的方法,怎么提示“类型不匹配”,什么意思?
 
建议不要一个一个cell的写很慢
用dsn如何:
自己设dsn:
function Tauditdata.ToExcelFile(var Filename:OleVariant;SheetName:OleVariant;WIndowCaption:OleVariant;SqlStr:String):Boolean;
var
NewTemplate,ItemIndex:olevariant;
CurSheet:_WorkSheet;
connectStr:olevariant;
begin
NewTemplate:=emptyParam;
try
try
ExcelApp.Connect;
except
MessageDlg('您可能没有安装EXCEL', mtError, [mbOk], 0);
Abort;
end;
ExcelApp.visible[0]:=TRUE;
ExcelApp.Caption:=WindowCaption;
ExcelApp.Workbooks.Add(Newtemplate,0);
ExcelBook.ConnectTo(ExcelApp.workBooks.Item[1]);
ExcelBook.Title[0]:=WIndowCaption;
ExcelBook.Activate;
CurSheet:=ExcelBook.Sheets[1] as _worksheet;
CurSheet.Name:=SheetName;
connectstr := 'ODBC;DSN=budget;';
CurSheet.QueryTables.Add(connectstr,CurSheet.range['a3','e3'],SqlStr);
ExcelQueryTable.ConnectTo(CurSheet.QueryTables.Item(1));
ExcelQueryTable.Refresh;
except
on E: Exception do
begin
ItemIndex:=FALSE;
ExcelBook.Close(ItemIndex);
ExcelApp.Disconnect;
ExcelApp.Quit;
Application.MessageBox('数据输出到EXCEL过程出错,请检查EXCEL版本是否一致','警告',mb_ok);
exit;
end;
end;
ExcelQueryTable.Disconnect;
ExcelBook.Disconnect;
ExcelApp.Disconnect;
Result:=TRUE;
end;
 
多人接受答案了。
 
to :zhangkan 不知道还来得及否
我也想要一个例子diannuanqi@21cn.com
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
544
import
I
后退
顶部