XL97: BottomRightCell/TopLeftCell Incorrect with Merged Cell (169107)
The information in this article applies to:
- Microsoft Excel 97 for Windows
This article was previously published under Q169107 SYMPTOMS
In Microsoft Excel 97, if you run a Visual Basic for Applications macro
that checks the BottomRightCell property or TopLeftCell property of a
drawing object, AutoShape, chart, or other object, the address of the cell
may appear to be incorrect.
CAUSE
This problem occurs if the BottomRightCell or TopLeftCell returns the
address of a merged cell.
WORKAROUND
Microsoft provides examples of Visual Basic for Applications procedures for
illustration only, without warranty either expressed or implied, including,
but not limited to the implied warranties of merchantability and/or fitness
for a particular purpose. The Visual Basic procedures in this article are
provided 'as is' and Microsoft does not guarantee that they can be used in
all situations. While Microsoft support professionals can help explain the
functionality of a particular macro, they will not modify these examples to
provide added functionality, nor will they help you construct macros to
meet your specific needs. If you have limited programming experience, you
may want to consult one of the Microsoft Solution Providers. Solution
Providers offer a wide range of fee-based services, including creating
custom macros. For more information about Microsoft Solution Providers,
call Microsoft Customer Information Service at (800) 426-9400.
If you want to return the address of the merged cell that lies beneath the
upper-left corner or the lower-right corner of an object, modify the code
so that it checks the address of the upper-leftmost cell of the MergeArea
that lies beneath the object. For example, instead of using the following
code
X = ActiveSheet.Shapes(1).TopLeftCell.Address
use this code:
X = ActiveSheet.Shapes(1).TopLeftCell.MergeArea.Resize(1, 1).Address
The MergeArea property returns the entire range of cells that is merged
into a single cell. The Resize method returns the upper-leftmost cell of
the MergeArea. The Address property returns the address of the merged cell.
You can use the same process with the BottomRightCell property of objects.
STATUS
Microsoft has confirmed this to be a problem in the Microsoft products
listed at the beginning of this article.
Modification Type: | Major | Last Reviewed: | 10/22/2000 |
---|
Keywords: | kberrmsg kbprb KB169107 |
---|
|