【发布时间】:2020-12-16 11:07:59
【问题描述】:
VBA 合并单元格/偏移属性出现问题。我想浏览一个包含合并单元格的列表并显示每个合并单元格的范围。
示例:
-
范围(“A1”)。值为“地址”
-
范围(“A2:A50”)是一个合并单元格,其值为“xyz@hotmail.com”
当我运行以下代码时:
- 问题 1:Range ("A1").Value 转换为 "xyz@hotmail.com"
- 问题 2:偏移后,MergeArea.Address 仍然返回 Range ("A1") 而不是 Range ("A2:A50")
我的代码:
Sub Macro1()
Dim CellA As Range
Set CellA = Range("A1")
Do Until IsEmpty(CellA.Value) = True
If CellA.MergeCells = False Then
CellA = CellA.Offset(1, 0)
Else
CellA = CellA.Offset(1, 0)
MsgBox (CellA.MergeArea.Address)
End If
Loop
End
【问题讨论】:
-
首先不鼓励使用合并单元格和VBA,您可以格式化不需要合并的单元格吗?如果不是,则关于合并区域的每个函数都针对左上角的单元格