Best way to write an app using Excel sheets that doesnt look like excel

T

Tom Couvret

Hi,

Appologise for the cross post, but this fits both in Excel and .NET world.

I've got a requirement to build a windows app for a specific type of
financial modelling. My ideal position would be to write a .NET windows form
app that embeds an excel worksheet in the way a grid control would normally
be used, but to be able to control every aspect of that sheet, both in terms
of properties and events, from my .NET app.

The reason I want to do this is that Excel has most of the functionality I
need as a base (we are really automating existing worksheets as a basis of
our app), and the look and feel within the worksheets is exactly what I
need. I would open up the bits of excel functionality I want them to have
access to as and when its appropriate.

I've looked at the add-in option, but the end result of this will be a
saleable product, and the perception is that if we just did it as an add-in
there is an expectation that its a small add-on to excel and therefore
cheap. If I could make the app run from within Excel but not make the fact
that it is excel obvious then I might be ok. Provided I can do everything I
want that way.

I've also looked at automating from outside of excel, but my perusal of the
news groups suggests that its not really possible to do it in the way I
would want - really the full excel app would need to be up and running, with
my app communicating with it, which I can see as a recipe for ultimate
disaster, rather than running a single excel sheet from within my Windows
app.

Third thing I looked at were the excel web components, but these appear to
be too limited in functionality for my use - specifically I'd like to make
use of excel styles which doesnt look like its available, and there is
probably a great deal of other functionality that is missing. I also dont
think I can control or capture enough of the events this way.

So there is my problem. Am I best to bite the bullet and basically rework an
excel look-alike from inside my app, using some other form of grid control
or some third-party excel-like control? Sounds ludicrous to me but I'll do
it if I have to... Or is this all a lot easier than its looking at present
and I'm just missing the vital piece of the puzzle?

Tom
 
K

Kaak

Tom

I you can write .Net code behind excel with the new visual studio 2005
and the visual studio tools for office.
You will have the full .Net enviroment and you can control excel even
better
than from excel.
You will have more events etc. etc.
Further more you can use the action pane for your own self made
controls.

Visual studio 2005 is now a final beta, so it new but if you need extra
info let me know.

Kaak
 
J

John Kortis

I'm not quite sure what you mean by a recipe for disaster, but I can assure
you the Interop Excel option is very doable. We created an application
which dynamically loads and fills in Excel sheets utilizing some of the best
of .NET technology. Get to me offline and I would gladly get you the
architecture...

John
 
T

Tom Couvret

Thank you for your pointer Kaak. I have been to some of the VS2005 sessions
over the last year or so and have seen some of this, but I was having
trouble finding the right places on MSDN to get started. Once you get to the
starting point things become a lot easier.

From what I can see though this all still ends up hosted within excel,
rather than the other way around where an excel worksheet acts like a
control on a Windows form. Have you any idea of whether this is possible or
are we forced to go down the Excel sheet & Action Pane within Excel style of
approach?

Tom
 
K

Kaak

First the code is not hosted in excel but exist along side excel in a
..dll

If its possible what you want depens on what kind of functionality you
want

There is a good excel control for on a form in the new visual studio
but never
with the full excel functions.

Can you give me a more detailed description of your application

Maybe I can help you by thinking of a good solution
 
T

Tom Couvret

Hi Kaak,

Thansk again for your help. We are trying to do a financial modelling app
where we have complete control over what the user does. Excel is a very
convenient grid subsystem, because it already does all the formatting,
calculations etc that we need. What we would really like is to have a
windows app that behaves itself properly, but that embeds an Excel sheet on
the page. This would be in place of other grid controls that we could use as
alternatives.

As a fall-back position, using an excel sheet with a task pane is not bad,
the main reservation being a marketing / sales consideration. If we are
trying to create our own financial modelling app, then we would prefer it to
look like something that is worth some money, not just an add-in to Excel
which the market sees as a low-value, or at leat low-cost, addition rather
than a high-value app.

I have looked at the office web components, which are of course easy to use,
but as you say there is too much missing functionality.

So I think my alternatives are to either create a standalone app, and use
some other form of grid control to do excel-like things, or to do it as an
excel app with a task pane.

Regards,
Tom
 
K

Kaak

I have never done this but mabey you can
Start a form when excel starts then hide excel and only use is for the
calculations
and display this in a control on the form?

This can only be done with VSTO

Kaak
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top