Excel is not a multi threading application.
Excel supports multi-threaded recalculations (MTR).
This is a big difference and your worksheet design will make you or break you.
From:
http://msdn.microsoft.com/en-us/library/bb687899.aspx
Excel 2007 uses a single main thread to run or execute the following:
* Built-in commands
* XLL commands
* XLL Add-in Manager interface functions (xlAutoOpen function, and so on)
* Microsoft Visual Basic for Applications (VBA) user-defined commands (often referred to as macros)
* VBA user-defined functions
* Built-in thread-unsafe worksheet functions (see the next section for a list)
* XLM macro sheet user-defined commands and functions
* COM add-in commands and functions
* Functions and operators within conditional formatting expressions
* Functions and operators within defined name definitions used in worksheet formulas
* The forced evaluation of an expression in the formula-edit box using the F9 key
All worksheet formulas, regardless of whether the functions are thread safe or not, are evaluated on the main thread unless Excel 2007 is configured to use more than one thread.
When the user specifies that more than one thread should be used, the additional threads are used for thread-safe cells. Note that the main thread may still be used for thread-safe cells when it makes sense from a load-balancing point of view.
Excel 2007 only considers the following as thread safe:
* All unary and binary operators in Excel.
* Almost all built-in worksheet functions in Excel 2007 (see exceptions list)
* XLL add-in functions that have been explicitly registered as thread-safe.
The built-in worksheet functions that are not thread safe are:
* PHONETIC
* CELL when either the "format" or "address" argument is used
* INDIRECT
* GETPIVOTDATA
* CUBEMEMBER
* CUBEVALUE
* CUBEMEMBERPROPERTY
* CUBESET
* CUBERANKEDMEMBER
* CUBEKPIMEMBER
* CUBESETCOUNT
* ADDRESS where the fifth parameter (the sheet_name) is given
* Any database function (DSUM, DAVERAGE, and so on) that refers to a pivot table
* ERROR.TYPE
* HYPERLINK
To be explicit, the following are considered to be unsafe:
* VBA user-defined functions
* COM add-in user-defined functions
* XLM macro-sheet user-defined functions
* XLL add-in functions not explicitly registered as thread safe
Quote from J.P.:
Yes, that's right. But I didn't realize the ramifications before this. As even though Excel is touted as being multithreaded, it's not completely. Opening a file, saving a file, large cut and paste operations, etc., all run on only one core; i.e., 25% of the CPU's capacity and significantly slower that if I had a single or dual core. That's the point. My ignorance; I should have done some research first. Thanks, S.