Can Excel Spreadsheet Cells contain Objects directly?
Ioannis Rigopoulos


PyXLL, like Obba, allows accessing objects from within Excel. But this is already possible since at least 20 years ago. Handle names in Excel have existed for a very long time.

Deriscope’s uniqueness does not relate to the ability of accessing objects. It relates to its wizard capabilities. None of the packages I have seen so far provide a wizard that comes even close to the one in Deriscope. It is the wizard that gives the user the feeling that one interacts with objects. Just by selecting a cell, the user can a) see the object’s contents in any level of recursion depth, b) get information on that object and c) call any of its local methods. If you are aware of any package that provides something similar in Excel, I would be very interested to know about it.

What I also believe to be original in my article, is my suggestion to Microsoft to extend UDFs so that they support the exporting and usage of Types and Objects. The innovative idea here is that anybody would then be able to quickly export an Object rather than just a Function, even by using pure Visual Basic code. No restriction to Python (see PyXLL) or Java (see Obba) would be in place. For concreteness let us call UDT the proposed new built-in User Defined Type. If such a UDT existed, one would be able to write Visual Basic code such as:

ObjectFunction MyUDT()

End ObjectFunction

where ObjectFunction would be an extension of the usual VBA Function.

Then an Excel user would interact with the MyUDT from a built-in Excel taskpane, similar to the one used by Deriscope. For example, the user could create object instances of the type associated with MyUDT, browse through the contents of already created instances and call local methods defined within MyUDT.