You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VBA代码实现选中指定区域(C7:I15)中有值的单元格?

修改后的VBA代码
Sub Testa()
    Dim cell As Range, rng As Range
    With Sheets("Sheet1")
        ' 遍历指定区域C7:I15内的每个单元格
        For Each cell In .Range("C7:I15")
            If cell.Value <> "" Then
                If rng Is Nothing Then
                    Set rng = cell
                Else
                    Set rng = Union(rng, cell)
                End If
            End If
        Next cell
        ' 检查是否找到非空单元格,避免报错
        If Not rng Is Nothing Then
            rng.Select
        Else
            MsgBox "指定区域内没有包含数据的单元格"
        End If
    End With
End Sub

关键修改说明

  • 移除原代码中计算G列最后一行的LR变量:因为目标区域是固定的C7:I15,不需要动态获取行号
  • 替换循环范围:把原代码中遍历G列的逻辑,改成直接遍历C7:I15这个指定区域
  • 增加空值判断:当指定区域内没有非空单元格时,弹出提示而不是触发运行时错误

内容的提问来源于stack exchange,提问作者Andrew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 09:31:13