In Chapter 9, I discuss the concept of a procedure's scope (public or private). The same discussion applies to functions: A function's scope determines whether it can be called by procedures in other modules or in worksheets.
Here are a few things to keep in mind about a function's scope:
♦ If you don't declare a function's scope, its default is Public.
♦ Functions declared As Private do not appear in Excel's Paste Function dialog box. Therefore, when you create a function that should be used only in a VBA procedure, you should declare it Private so that users don't try to use it in a formula.
♦ If your VBA code needs to call a function that's defined in another workbook, set up a reference to the other workbook by choosing the Visual Basic Editor (VBE) Tools ^ References command.
Was this article helpful?