Foxtable(狐表)用户栏目专家坐堂 → excel报表,如何不显示金额列


  共有1438人关注过本帖树形打印复制链接

主题:excel报表,如何不显示金额列

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/14 10:05:00 [显示全部帖子]

方法一:重新fill表格,排除金额列 http://www.foxtable.com/webhelp/scr/1929.htm

 

方法二:编写beforeBuild事件,检测模板文件(循环每一个单元格),把[金额]这样的字符替换成空白。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/14 10:13:00 [显示全部帖子]

以下是引用lihe60在2017/12/14 10:12:00的发言:
第一个方法试一下;第二个方法不可行,因为任何人都不能显示金额了。

 

beforebuild事件,你不是可以加入条件判断?满足条件的才检测替换。这个方法更符合规范。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/14 10:58:00 [显示全部帖子]

参考代码

 

Dim file As String = "d:\test.xls"
Dim temp As String = "d:\temp.xls"
FileSys.CopyFile(file, temp, True)
Dim book As new XLS.Book(file)
Dim sheet As XLS.Sheet = book.Sheets(0)
For i As Integer = 0 To sheet.Rows.count - 1
    For j As Integer = 0 To sheet.cols.Count - 1
        sheet(i,j).value = sheet(i,j).text.replace("[金额]", "0")
    Next
Next
book.save(file)

 

打印完以后,afterBuild事件,记得把temp.xls替换原来的test.xls文件,还原回去。


 回到顶部