打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Word VBA技术:判断表格中的单元格是否为空
userphoto

2022.11.28 四川

关注
excelperfect

标签:Word VBA
可以使用VBA代码来判断文档中表格内的单元格是否为空。下面的代码检查所选文档内容中表格内的单元格,并给出空单元格的信息。
方法1

基于空单元格由Chr(7)跟随的段落标记组成,可以使用Range对象检测空单元格,代码如下:

Sub CheckTableCells()

    Dim rngCell As Cell

    Dim rngRow As Row

    For Each rngRow In Selection.Tables(1).Rows

        For Each rngCell In rngRow.Cells

            If rngCell.Range.Text = Chr(13) & Chr(7) Then

            MsgBox '' & rngCell.RowIndex & ',' & rngCell.ColumnIndex & '列为空.'

            End If

        Next rngCell

    Next rngRow

End Sub
方法2

使用Range变量,将其设置为标记每个单元格的区域,移动到区域的末端,使单元格末端标记和段落标记不包含在区域中(要执行此操作,只需将其移动一个字符),并获取区域内的文本。如果单元格为空,则区域内没有文本。代码如下:

Sub CheckTableCells1()

    Dim rngCell As Cell

    Dim rngRow As Row

    Dim rngRange As Range

    For Each rngRow In Selection.Tables(1).Rows

        For Each rngCell In rngRow.Cells

            Set rngRange = rngCell.Range

            rngRange.End = rngRange.End - 1

            If Len(rngRange.Text) = 0 Then

                MsgBox '' & rngCell.RowIndex & ',' & rngCell.ColumnIndex & '列为空.'

            End If

        Next rngCell

    Next rngRow

End Sub
方法3

下面的代码与方法1类似,只是在给出空单元格信息之前先选择该单元格。

Sub CheckTableCells2()

    Dim rngCell As Cell

    Dim rngRow As Row

    Dim rngRange As Range

    For Each rngRow In Selection.Tables(1).Rows

        For Each rngCell In rngRow.Cells

            If rngCell.Range.Text = Chr(13) & Chr(7) Then

                rngCell.Select

                MsgBox '' & rngCell.RowIndex & ',' & rngCell.ColumnIndex & '列为空.'

            End If

        Next rngCell

   Next rngRow

End Sub

这些代码很简单,辑录于此,待后续使用时查阅。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel VBA 5.23 新番 工作簿含有空行、合计行如何汇总
Excel VBA Range单元格操作实例
#Excel VBA#解读(34):找到单元格所在的行列号——Row属性和Column属性
VBA案例精选 获取单元格区域中最后一个单元格地址
excel怎么使用VBA窗口
禁止Excel工作薄文件被拷贝复制的方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服