J
jsbyl
Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠
我从ORACLE数据库某个表中导数据到一个EXCEL表中时
数据库中的日期字段导到EXCEL表中时显示不正常
同时VARCHAR2型的字段如果是英文字母或中文时导入EXCEL文件后正常
但如果是类似如:13800000000的号码则显示不正确
请问各位大侠怎么解决以上问题
下面是我的代码
var c,r,i,j : integer ;
app : Olevariant ;
TempFileName,ResultFileName : String ;
begin
try
app := CreateOLEObject('Excel.application') ;
except
Messagedlg('ExcelûÓÐÕýÈ·°²×°£¡',mterror,[mbok],0);
exit ;
end ;
TempFileName := 'test' ;
app.Workbooks.add ;
app.Visible := false ;
dbgrid1.DataSource.DataSet.First;
// DBGResult.DataSource.DataSet.First ;
c:=dbgrid1.DataSource.DataSet.FieldCount ;
r:=dbgrid1.DataSource.DataSet.RecordCount ;
for i:=0 to c-1 do
app.cells(1,1+i):= dbgrid1.DataSource.DataSet.Fields.DisplayLabel ;
for j:=1 to r do
begin
for i:=0 to c-1 do
app.cells(j+1,1+i):= dbgrid1.DataSource.DataSet.Fields.AsString ;
dbgrid1.DataSource.DataSet.Next ;
end ;
ResultFileName := TempFileName ;
if ResultFileName='' then ResultFileName:='×Ô¶¯±¨±í' ;
if FileExists(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') then
DeleteFile(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') ;
app.Activeworkbook.saveas(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') ;
// showmessage(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls');
app.Activeworkbook.close(false) ;
app.quit ;
app:=unassigned ;
end;
我从ORACLE数据库某个表中导数据到一个EXCEL表中时
数据库中的日期字段导到EXCEL表中时显示不正常
同时VARCHAR2型的字段如果是英文字母或中文时导入EXCEL文件后正常
但如果是类似如:13800000000的号码则显示不正确
请问各位大侠怎么解决以上问题
下面是我的代码
var c,r,i,j : integer ;
app : Olevariant ;
TempFileName,ResultFileName : String ;
begin
try
app := CreateOLEObject('Excel.application') ;
except
Messagedlg('ExcelûÓÐÕýÈ·°²×°£¡',mterror,[mbok],0);
exit ;
end ;
TempFileName := 'test' ;
app.Workbooks.add ;
app.Visible := false ;
dbgrid1.DataSource.DataSet.First;
// DBGResult.DataSource.DataSet.First ;
c:=dbgrid1.DataSource.DataSet.FieldCount ;
r:=dbgrid1.DataSource.DataSet.RecordCount ;
for i:=0 to c-1 do
app.cells(1,1+i):= dbgrid1.DataSource.DataSet.Fields.DisplayLabel ;
for j:=1 to r do
begin
for i:=0 to c-1 do
app.cells(j+1,1+i):= dbgrid1.DataSource.DataSet.Fields.AsString ;
dbgrid1.DataSource.DataSet.Next ;
end ;
ResultFileName := TempFileName ;
if ResultFileName='' then ResultFileName:='×Ô¶¯±¨±í' ;
if FileExists(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') then
DeleteFile(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') ;
app.Activeworkbook.saveas(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls') ;
// showmessage(ExtractFilePath(Application.EXEName)+ResultFileName+'.xls');
app.Activeworkbook.close(false) ;
app.quit ;
app:=unassigned ;
end;