Foxtable(狐表)用户栏目专家坐堂 → Excel 自动行高后,再怎么继续增加行高?发现新问题


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

主题:Excel 自动行高后,再怎么继续增加行高?发现新问题

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


加好友 发短信
等级:幼狐 帖子:80 积分:823 威望:0 精华:0 注册:2016/1/10 11:25:00
Excel 自动行高后,再怎么继续增加行高?发现新问题  发帖心情 Post By:2017/9/24 9:56:00 [只看该作者]

 Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Cells
Rg.WrapText = True
Rg.EntireRow.AutoFit  '自动调整行高

‘第3行到结尾,每行行高再增加5?怎么写代码

App.Visible = True
[此贴子已经被作者于2017/9/24 15:22:38编辑过]

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


加好友 发短信
等级:幼狐 帖子:80 积分:823 威望:0 精华:0 注册:2016/1/10 11:25:00
  发帖心情 Post By:2017/9/24 10:51:00 [只看该作者]

 自己解决了,还是要感谢各位的热心帮助:

Rg = Ws.UsedRange
Dim RowBegin As Integer = Rg.Cells(1).Row
Dim RowEnd As Integer = Rg.Cells(Rg.Count).Row
'MessageBox.Show(RowBegin)
'MessageBox.Show(RowEnd)
For i As Integer = 10 To RowEnd - 4
Dim Rgx As MSExcel.Range = Ws.Rows(i)
Rgx.RowHeight = Rgx.RowHeight + 10
Next


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


加好友 发短信
等级:幼狐 帖子:80 积分:823 威望:0 精华:0 注册:2016/1/10 11:25:00
  发帖心情 Post By:2017/9/24 15:22:00 [只看该作者]

想增加行高,让字与字之间,有些间隙,看上去舒适一些。

刚才调试后,发现我的代码有问题,打只有一页的报表没问题,如果有多页的报表,后面页的 <HeaderRow> 和 <FooterRow> 也被增高了。现在需要不增高
<HeaderRow> 和
<FooterRow>,只需要增高细节区。怎么写代码,麻烦大家帮忙?

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


加好友 发短信
等级:幼狐 帖子:80 积分:823 威望:0 精华:0 注册:2016/1/10 11:25:00
  发帖心情 Post By:2017/9/24 21:15:00 [只看该作者]

 想 了个变通的办法,做Excel 模板的时候 增加一个辅助列,把不要调整行高的那行,在辅助列里填入几个标志字符,我这里填 “ xxx",代码调整完行高后再删除辅助列

'调整行高
Rg = Ws.UsedRange  '获取使用的单元格
Dim RowBegin As Integer = Rg.Cells(1).Row
Dim RowEnd As Integer = Rg.Cells(Rg.Count).Row  '结尾行号

For i As Integer = 1 To RowEnd
Dim Rgx As MSExcel.Range = Ws.Cells(i,1)
    If Rgx.Value <> "xxx" Then  '判断辅助列
    Rgx.RowHeight = Rgx.RowHeight + 6
    End If
Next
Ws.Columns("A").delete '删除辅助列

 回到顶部