以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助][灌水]excel导出报错“不能更新,数据库或对象为只读”  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=34852)

--  作者:bingo
--  发布时间:2013/6/17 20:34:00
--  [求助][灌水]excel导出报错“不能更新,数据库或对象为只读”

 想导出excel表,输入以下代码,出现报错“不能更新,数据库或对象为只读”

 

Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog

dlg.Filter= "Excel文件|*.xlsx" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim ex As New Exporter

    ex.Format = "Excel" \'导出格式为Excel

    ex.SourceTableName = "report" \'指定导出表

    ex.filepath = dlg.FileName  \'指定目标文件

ex.Fields = "seller,orderid" \'指定导出字段

ex.Filter = "[seller] = \'bingo\'" \'指定导出条件

    ex.Export() \'开始导出

End If

 

请问这个是什么问题,请支支招。

 

还有就这个方法是保存成一个workbook,如果我想保存成一个workbook里的worksheet,代码应该如何改,或者看哪里的帮助,没有找到这部分的说明。

 

 

 

[此贴子已经被作者于2013-6-17 20:50:38编辑过]

--  作者:狐狸爸爸
--  发布时间:2013/6/17 22:04:00
--  
说明你导出的目标excel文件已经存在,而且此文件只读。
--  作者:bingo
--  发布时间:2013/6/18 19:22:00
--  

狐爸,我试了很多次了,不是你说的原因哦,能帮忙看看这个“导出为excel表“的按钮代码究竟出什么问题了?

 

还有就是我想导出成为一个worksheet的,因为我还要导出其他的worksheet到同一个workbook里的,代码怎么修改,哪里有帮助。

 

麻烦狐爸详细说说,这个步骤对我来说较为关键。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据导入-数据库建模.table


--  作者:y2287958
--  发布时间:2013/6/18 21:33:00
--  
 ex.Format = "Excel2007" \'导出格式为Excel
--  作者:Bin
--  发布时间:2013/6/19 8:55:00
--  
以下是引用y2287958在2013-6-18 21:33:00的发言:
 ex.Format = "Excel2007" \'导出格式为Excel



正解否则你要使用XLS格式 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据导入-数据库建模.table


--  作者:bingo
--  发布时间:2013/6/20 15:13:00
--  
感谢BIN!感谢大家热心回复。已经改成xls格式输出没问题了。

我现在想通过这个代码导出一个worksheet,而不是一个workbook,因为这个workbook 里面有2个worksheet的。
请看附件,”上传列表“是workbook,我现在要导出成“订单信息”这个worksheet,因为我后续还需要写一段代码导出SKU的这个worksheet.
麻烦看看代码怎么改,有无帮助?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:上传列表.xls




--  作者:Bin
--  发布时间:2013/6/20 15:17:00
--  
这个好像没有办法做到.必须得分成多个文件了. 你导出在同一个文件夹吧

严格来说也不是就不能实现,但是比较麻烦,没有必要.

--  作者:bingo
--  发布时间:2013/6/20 20:16:00
--  

好的,谢谢BIN!

 

我现在导出的筛选条件是多重的,譬如我在面板加了个按钮DateTimePicker1,想同时符合两个条件才输出:

 

ex.Filter = "[seller] = \'bingo\'and [reportingdate]=e.Form.Controls(DateTimePicker1)"

 

帮忙看看这个代码应该如何修改,每次遇到时间的问题就容易犯糊涂,现在提示说参数未定义。

 

还有一个问题,除了上面2个筛选条件外,我还想用模糊筛选,即是用Like* 这个语法的,这个应该如何嵌套到ex.Filter这个语法里面。

 

 


--  作者:Bin
--  发布时间:2013/6/21 8:40:00
--  
ex.Filter = "[seller] = \'bingo\'and [reportingdate]=#" & e.Form.Controls(DateTimePicker1).Value & "#"
[此贴子已经被作者于2013-6-21 8:39:55编辑过]

--  作者:bingo
--  发布时间:2013/6/21 23:35:00
--  
ex.Filter = "[seller] = \'bingo\'and [reportingdate]=#" & e.Form.Controls(“DateTimePicker1”).Value & "#"

谢谢BIN,已经顺利通过,我现在想将用Like*的语句做模糊筛选,譬如我的一个列的字段有HQB-***的,我想用Like*语句将这个HQB-***的行筛选出来,如何在原来的
ex.Filter 上添加这个语句,我搜索了下,比较少关于Like*的代码案例。

这个是我导出功能的一个很重要的判断。