前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用VBA自动化处理表的代码大全3

使用VBA自动化处理表的代码大全3

作者头像
fanjy
发布2023-08-30 08:26:15
2480
发布2023-08-30 08:26:15
举报
文章被收录于专栏:完美Excel

本节内容:

创建和转换表

将所选区域转换成表

下面的代码基于当前所选区域创建表,并将其命名为myTable。

代码语言:javascript
复制
Sub ConvertRangeToTable()
  Dim tableName As String
  Dim tableRange As Range
  
  tableName = "myTable"
  Set tableRange = Selection.CurrentRegion
  ActiveSheet.ListObjects.Add(SourceType:=xlSrcRange, _
    Source:=tableRange, _
    xlListObjectHasHeaders:=xlYes _
    ).Name = tableName
End Sub

将表转换回单元格区域

下面的代码将表转换回标准的单元格区域。

代码语言:javascript
复制
Sub ConvertTableToRange()
  ActiveSheet.ListObjects("myTable").Unlist
End Sub

注意,将表转换为标准的单元格区域时,表的格式仍然保留,所以外观上看起来仍然像表。

调整表的单元格区域

下面的代码将表的区域调整为单元格A1:G50。

代码语言:javascript
复制
Sub ResizeTableRange()
  ActiveSheet.ListObjects("myTable").Resize
  Range("$A$1:$G$50")
End Sub

表样式

有许多表格格式选项,其中最常见的选项如下所述。

修改表样式

修改表样式为已有的预设样式。

代码语言:javascript
复制
Sub ChangeTableStyle()
  ActiveSheet.ListObjects("myTable").TableStyle  = "TableStyleLight15"
End Sub

想要知道要应用的样式,最好的方法是使用录制宏,其录制的代码将告诉你所选取的样式名称。

获取表样式名

使用下面的代码获取已经应用于表的样式名称。

代码语言:javascript
复制
Sub GetTableStyleName()
  MsgBox ActiveSheet.ListObjects("myTable").TableStyle
End Sub

应用样式到第一列或最后一列

使用下面的代码能够将表的第一列和最后一列设置不同格式。

代码语言:javascript
复制
Sub ColumnStyles()
  '应用特定样式给第一列
  ActiveSheet.ListObjects("myTable").ShowTableStyleFirstColumn = True
  '应用特定样式给最后一列
  ActiveSheet.ListObjects("myTable").ShowTableStyleLastColumn = True
End Sub

添加或删除条纹

默认情况下,表具有间隔阴影行,但也可为此设置其他选项,例如删除行间隔阴影或添加列间隔阴影。

代码语言:javascript
复制
Sub ChangeStripes()
  '应用列条纹
  ActiveSheet.ListObjects("myTable").ShowTableStyleColumnStripes = True
  '删除行条纹
  ActiveSheet.ListObjects("myTable").ShowTableStyleRowStripes = False
End Sub

设置默认表样式

下面的代码设置默认的表样式。

代码语言:javascript
复制
Sub SetDefaultTableStyle()
  '设置默认表样式
  ActiveWorkbook.DefaultTableStyle = "TableStyleMedium2"
End Sub

未完待续……

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档