以文本方式查看主题

-  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=107252)

--  作者:lyx4040
--  发布时间:2017/9/24 9:56:00
--  Excel 自动行高后,再怎么继续增加行高?发现新问题
 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
--  发布时间: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
--  发布时间:2017/9/24 15:22:00
--  
想增加行高,让字与字之间,有些间隙,看上去舒适一些。

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

--  作者:lyx4040
--  发布时间: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 \'删除辅助列