VBA专题10-3:使用VBA操控Excel界面之设置工作表(续)

2020-07-16 17:35:18 浏览数 (1)

本文继续讲解操控工作表中一些界面元素的VBA代码。

工作表中的行列

隐藏和取消隐藏行标题

不能够分别单独隐藏行标题和列标题,只能同时隐藏或者显示这两个标题。

示例代码:

'隐藏和取消隐藏活动窗口中活动工作表的行标题和列标题

'隐藏标题

ActiveWindow.DisplayHeadings= False

'取消隐藏标题

ActiveWindow.DisplayHeadings= True

隐藏和取消隐藏工作表行

可以使用下列任一VBA语句隐藏活动工作表中的所有行:

'隐藏工作簿的活动工作表中所有行

ActiveSheet.Rows.Hidden= True

ActiveSheet.Rows.EntireRow.Hidden= True

ActiveSheet.Cells.Rows.Hidden= True

要隐藏其他工作表中的行,只需使用该工作表代替ActiveSheet,例如使用Sheets(1)代表第1个工作表,或者使用Worksheets(1)代表第1个标准工作表。隐藏所有行后,行标题几乎被隐藏,但列标题仍然在工作表中。

要取消隐藏所有行,可以使用下列任一VBA语句:

'取消隐藏工作簿的活动工作表中所有行

ActiveSheet.Rows.Hidden= False

ActiveSheet.Rows.EntireRow.Hidden= False

ActiveSheet.Cells.Rows.Hidden= False

下面的示例代码隐藏指定行:

'隐藏指定的行

'仅隐藏第2行

ActiveSheet.Rows(2).Hidden= True

'隐藏第3行和第4行

ActiveSheet.Rows("3:4").Hidden= True

'隐藏非连续的行

ActiveSheet.Range("6:6,8:10,12:13").EntireRow.Hidden= True

上面语句中的逗号是联合操作符,用来组合一系列行。

行高

示例代码:

'设置活动工作表所有行的高度

ActiveSheet.Rows.RowHeight= 15

'设置第2行的高度

ActiveSheet.Rows(2).RowHeight= 20

'设置第4行至第6行的高度

ActiveSheet.Rows("4:6").RowHeight= 10

'设置非连续行的高度

ActiveSheet.Range("8:8,10:12").RowHeight= 10

隐藏行的高度是0。设置隐藏行的高度为非零值将取消隐藏行。

隐藏和取消隐藏工作表列

可以使用下列任一VBA语句隐藏活动工作表中的所有列:

'隐藏工作簿的活动工作表中所有列

ActiveSheet.Columns.Hidden= True

ActiveSheet.Columns.EntireColumn.Hidden= True

ActiveSheet.Cells.Columns.Hidden= True

要隐藏其他工作表中的列,只需使用该工作表代替ActiveSheet,例如使用WorkSheets(1)代表第1个工作表,或者使用Worksheets(2)代表第2个工作表。隐藏所有列后,列标题几乎被隐藏,但行标题仍然在工作表中。

要取消隐藏所有列,可以使用下列任一VBA语句:

'取消隐藏工作簿的活动工作表中所有列

ActiveSheet.Columns.Hidden= False

ActiveSheet.Columns.EntireColumn.Hidden= False

ActiveSheet.Cells.Columns.Hidden= False

下面的示例代码隐藏指定列:

'隐藏指定列

'仅隐藏列B

ActiveSheet.Columns(2).Hidden= True

'隐藏列D和列E

ActiveSheet.Columns("D:E").Hidden= True

'隐藏非连续的列

ActiveSheet.Range("G:G,J:K,M:N").EntireColumn.Hidden= True

上面语句中的逗号是联合操作符,用来组合一系列列。

列宽

示例代码:

'设置第1个工作表中所有列的宽度

Worksheets(1).Columns.ColumnWidth= 8

'设置列B的宽度

Worksheets(1).Columns(2).ColumnWidth= 3

'设置列D至列F的宽度

Worksheets(1).Columns("D:F").ColumnWidth= 2

'设置非连续列的宽度

Worksheets(1).Range("G:G,J:K").ColumnWidth= 4

隐藏列的宽度是0。设置隐藏列的宽度为非零值将取消隐藏列。

说明:本专题系列大部分内容学习整理自《Dissectand Learn Excel VBA in 24 Hours:Changingworkbook appearance》,仅供学习研究。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

vba

0 人点赞