以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  导出EXCEL时如何用公式直接导出  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=12677)

--  作者:bad
--  发布时间:2011/9/11 11:33:00
--  导出EXCEL时如何用公式直接导出

导出EXCEL,因为有的列隐藏起来了,且不想让用户导出这些隐藏的列,而用高速导出时用户可以选择所有列。

 

 

将产品PD01的订单导出为Excel格式保存,并只导出指定的列:

Dim ex as New Exporter
ex.SourceTableName = "订单" \'指定导出表
ex.FilePath = "c:\\Data\\订单.xls" \'指定目标文件
ex.Format = "Excel" \'导出格式为Excel
ex.Fields = "日期,客户,数量,单价" \'指定导出字段
ex.Filter = "[产品] = \'PD01\'" \'指定导出条件
ex.Export() \'开始导出

 

 

上面这个比较麻烦,需要指定列(因为不同的用户看到的列都是不同的,而且用户太多,所以不方便这样设)

 

因此要求:设置一个导出EXCEL公式,用户点后,只能导出当前显示的列,隐藏的不导出。

[此贴子已经被作者于2011-9-11 11:35:33编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/9/11 12:20:00
--  

Dim flds as String

For each c as Col In Tables("订单").Cols

    if v.Visible  Then

      flds = flds & "," & c.name

    end if

Next

flds= flds.Trim(",")

 

Dim ex as New Exporter
ex.SourceTableName = "订单" \'指定导出表
ex.FilePath = "c:\\Data\\订单.xls" \'指定目标文件
ex.Format = "Excel" \'导出格式为Excel
ex.Fields = flds  \'指定导出字段
ex.Filter = "[产品] = \'PD01\'" \'指定导出条件
ex.Export() \'开始导出


--  作者:bad
--  发布时间:2011/9/11 12:49:00
--  

if v.Visible  应用if C.Visible  Then

 

上述公式在指定目录下已经存在该文件时,会提示出错无法导出覆盖。

 

有没有办法自己选择导出的目录?


--  作者:czy
--  发布时间:2011/9/11 13:03:00
--  

http://www.foxtable.com/help/topics/0328.htm