I found the answer myself. For example, to access TestMethod in Sheet4, you
use
Globals.Sheet4.TestMethod
To access TestMethod in ThisWorkbook,
Globals.ThisWorkbook.TestMethod
--
Ed
"Ed White" wrote:
> To clarify and expand on the above, generally speaking, when I have methods
> (i.e. subs) in ThisWorkbook and in different sheets, how do I call a method
> in one sheet (or ThisWorkbook) from another sheet? If I make the subs
> Shared, it works, except when I try to use "Me." in a shared method, it says
> "'Me' is valid only within an instance method". So do I create instances of
> all the sheets and the workbooks? It seems creating instances is strange in
> VSTO.
> --
> Ed
>
>
> "Ed White" wrote:
>
> > I'm using VSTO with VB in VS 2008 and Excel 2007, and trying to understand
> > something basic. I've written some public methods in ThisWorkbook.vb, which
> > is the class created by VSTO with "Public Class ThisWorkbook". Suppose one
> > method I've writtine in the workbook is Public TestMethod. If I am writing
> > code in a worksheet, e.g. Sheet1.vb, and I want to access TestMethod, how do
> > I do it? TestMethod is under the ThisWorkbook class, and is not a shared
> > method. If I write ThisWorkbook.TestMethod, it says it's a non-shared member
> > and requires an object reference. Do I create an new instance of
> > ThisWorkbook in Sheet1, or will this confuse VSTO/Excel?
> >
> > --
> > Ed
|