Foxtable(狐表)用户栏目专家坐堂 → 代码优化


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

主题:代码优化

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


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

这段代码影响速度,尽量把红色放到外面去,也就是,合并的列的宽度值固定值或者获取一次就好了。

 

引用的时候不用重复使用如 tempWs.Columns(1) 请定义一个变量记录,重复获取耗时的。

 

如果你的表格不是规则的,也就是宽度必须相对获取,那么没有优化空间了。

 

但,再怎么优化,处理一行也大概需要1秒左右。

 

 If rg.MergeCells AndAlso rg.MergeArea.Columns.count>1 Then
            rg.Font.Strikethrough = Strike '设置删除线
            Dim width As Double = 0
            Dim tempCol
            For Each tempcol In rg.MergeArea.Columns
                width = width + tempcol.ColumnWidth
            Next

            tempWs.Columns(1).WrapText = True
            tempWs.Columns(1).ColumnWidth = width
            tempWs.Columns(1).Font.Size = rg.Font.Size
            tempcell.Value = rg.Value
            tempcell.RowHeight = 0
            tempcell.EntireRow.Activate
            tempcell.EntireRow.AutoFit


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


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

 代码请自行优化。

 回到顶部