【发布时间】:2018-09-18 04:22:27
【问题描述】:
我在使用合并单元格偏移的正确语法时遇到问题。例如,在 A 列中,第 2 行到第 5 行 (A2:A5) 是一个合并单元格。我想使用偏移量来获取(B2:B5)上的列范围,包括合并的单元格值(A2:B5)。从那里,我想使用该偏移范围作为聚集柱形图的值。我现在的代码只获取第一个单元格值 (B2) 而不是 (A2:B5)。任何帮助,将不胜感激。
Dim ws As Worksheet: Set ws = Sheets("Trend")
Dim LastRow As Long, partnum As String, findpart As Range
Dim lastrowmerge As Long, FirstRow As Long
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row
partnum = TextBox1.Value
' Searches for number in column A including merged cells
If Not Application.IsNA(Application.Match(partnum, Range("A:A"), 0)) Then
Set findpart = Cells(Application.Match(partnum, Range("A:A"), 0), 1)
' If number found , get range values to the right of number found in column A
Dim xVals As Long
Set mymergedrange = findpart.MergeArea
' FirstRow = mymergedrange.Row
' lastrowmerge = mymergedrange.Row + mymergedrange.Rows.Count - 1
xVals = mymergedrange.Offset(0, 1) ' (B2 not B2:B5)
【问题讨论】:
-
@chrisneilsen
xVals成为Long也是一个问题,但MergeArea的Offset确实是一个单元格。
标签: excel vba merge range offset