Article ID: 213684 - Last Review: November 23, 2006 - Revision: 3.5 XL2000: Function That Uses the ActiveCell Property Returns Incorrect ResultThis article was previously published under Q213684 SYMPTOMS
When you enter a formula that calls a custom function, the formula may return an incorrect result when you recalculate the worksheet. The formula returns the correct result only when you select the cell that contains the formula and then recalculate the worksheet. When you do this, other formulas that call the same custom function return the same result.
CAUSE
This behavior occurs when the following conditions are true:
WORKAROUNDMicrosoft provides programming examples 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. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or Microsoft Advisory Services. For more information, visit these Microsoft Web sites: Microsoft Certified Partners - https://partner.microsoft.com/global/30000104 (https://partner.microsoft.com/global/30000104) Microsoft Advisory Services - http://support.microsoft.com/gp/advisoryservice (http://support.microsoft.com/gp/advisoryservice) For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS (http://support.microsoft.com/default.aspx?scid=fh;en-us;cntactms) To work around this behavior, substitute Application.Caller for the ActiveCell property wherever it is used in the custom function. For example, if the custom function is the following MORE INFORMATION
When you use the ActiveCell property in a custom function in Microsoft Excel, the property returns the cell that is currently active. This is true even if the custom function is called by a formula in a worksheet cell.
The Caller property of the Application object returns the object that calls the function, regardless of the cell or worksheet that is active. To demonstrate the behavior described in this article, follow these steps:
REFERENCESFor additional information about getting help with Visual Basic forApplications, click the article number below
to view the article in the Microsoft Knowledge Base:
226118
(http://support.microsoft.com/kb/226118/EN-US/
)
OFF2000: Programming Resources for Visual Basic for Applications
| Article Translations
|
Back to the top
