Run-time error using FormulaArray property


When you try to create an array formula by using a Visual Basic for Applications macro, you may receive the following error message:

Run-time error '1004':
Unable to set the FormulaArray property of the Range class.


This problem occurs when you try to pass a formula that contains more than 255 characters, and you are using the FormulaArray property in Visual Basic for Applications.


Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

More Information

An array formula can perform multiple calculations and then returns either a single result or multiple results. You create array formulas the same way that you create basic, single-value formulas. However, with an array formula, after you create the formula, instead of entering the formula by pressing the ENTER key, you enter the formula by pressing the CTRL+SHIFT+ENTER keys.

An array formula can be identified by the braces ({}) surrounding the formula. To create an array formula in Visual Basic for Applications, you can use the FormulaArray property. However, you cannot create a formula that has more than 255 characters by using this property. Note that the Formula property in Visual Basic for Applications does not have this limit.


For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base:

213841 Passed strings longer than 255 characters are truncated

212172 "Unable to record" message when recording a macro

For more information about the FormulaArray property, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type FormulaArray in the Office Assistant or the Answer Wizard, and then click Search to view the topic.