首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

数据窗口导出到Excel的有关问题

2012-12-15 
数据窗口导出到Excel的问题我先用saveas()将数据窗口的内容导入到Excel文件里了,然后我想修改该excel文件

数据窗口导出到Excel的问题
我先用saveas()将数据窗口的内容导入到Excel文件里了,然后我想修改该excel文件里的标题和列宽,总是提示出错,下面是我的代码:
integer li_rtn
string ls_name,ls_pathname
li_rtn=GetFileSaveName("保存文件",ls_pathname,ls_name,"xls","Excel文件(*.xls),*.xls")
if li_rtn=1 then
li_rtn=dw_1.SaveAs(ls_name, Excel!, true)
   if li_rtn=1 then
      // MessageBox("提示信息","导出数据成功!") 
    else
      MessageBox("错误信息","导出数据失败!")
      return -1 //error
end if
end if
long numcols , numrows , c, r
OLEObject xlapp , xlsub
int ret
// 产生oleobject的实例
xlapp = Create OLEObject

//连接ole对象
ret = xlApp.ConnectToNewObject( "Excel.Sheet" )
if ret < 0 then
MessageBox("连接失败!","连接到EXCEL失败,请确认您的系统是否已经安装EXCEL!~r~n"&
+"错误代码:"+string(ret))
  return -1
end if
// 打开EXCEL文件
xlapp.Application.Workbooks.Open(ls_pathname)  
//xlapp.ActiveWorkBook.Sheets(mid(ls_name, 1, len(ls_name) - 4)).SELECT 
xlApp.ActiveSheet.Columns( "A:C").AutoFit//列宽自动调整
xlApp.ActiveSheet.Columns( "A:C").ColumnWidth=18
xlApp.activesheet.cells(1,1).value="部门"
xlApp.activesheet.cells(1,2).value="应收费"
xlApp.activesheet.cells(1,3).value="日期"
//xlsub.cells[1,1]="部门"
//xlsub.cells[1,2]="应收费"
//NEXT
xlApp.ActiveWorkbook.Save()
xlApp.application.quit() 
xlApp.disconnectobject() 
destroy   xlApp 
出错的地方是红色标记的地方。而且我打开导出的Excel文件发现导出的sheet没有任何改变,列宽和标题改变的是名称为Object的表。这是为什么?
我以为是打开的sheet不对,用了下面的代码来替代
xlapp.ActiveWorkBook.Sheets(mid(ls_name, 1, len(ls_name) - 4)).SELECT 
结果提示我没有这个名称的sheet。可是我打开导出的Excel,sheet的名称的确是mid(ls_name, 1, len(ls_name) - 4)计算出来的字符串。
请高手指正
[解决办法]
出错提示是什么?
[解决办法]
No name Found in什么的
[解决办法]
Name not found Accessing external Object workbook。。。。。。
[解决办法]
改成:
xlApp.Application.Activeworkbook.Save()
[解决办法]

引用:
改成:
xlApp.Application.Activeworkbook.Save()

谢谢回复,我明天试试~~
[解决办法]
引用:
改成:
xlApp.Application.Activeworkbook.Save()

错误的确没有了
可是我想要修改的内容并没有修改成功,运行后弹出来一个对话框,说是否将修改的文件保存,出现“取消”“重试”“继续”三个按钮,点任何一个,打开那个excel文件都没有将标题和列宽修改成我想要的,这是为什么?

热点排行