Jump to content
david_navigator

Looking for Spreadsheet component

Recommended Posts

Hi

Has anyone come across a grid/spreadsheet component that will allow the developer to "attach" an Object to a cell (or even something as mundane as a tag), but has all the inbuilt functionality of basic excel such as inserting/deleting cells/rows/columns and allowing a range of cells to be selected and cut/copy and pasted elsewhere, grouping rows and allowing them to be expanded/collaspsed etc ?

The Devex Spreadsheet does everything except for allowing any data to be attached to a cell 😞

Share this post


Link to post
3 minutes ago, ConstantGardener said:

...the TAdvStringGrid from TMS should do the trick.

I did look at it, but it seemed very basic in comparison to the devEx one. Does it have in built support for all the usual excel functions such as inserting/deleting cells/rows/columns and all the other cells moving appropriately ? 

Share this post


Link to post

i don't know the devEx one, but the TMS thingy has a very wide range of events, procs and functions for such operations. Maybe you need to add some eventhandlers, but all in all it is very powerfull. My 2 Cent!

Share this post


Link to post
2 hours ago, david_navigator said:

Hi

Has anyone come across a grid/spreadsheet component that will allow the developer to "attach" an Object to a cell (or even something as mundane as a tag), but has all the inbuilt functionality of basic excel such as inserting/deleting cells/rows/columns and allowing a range of cells to be selected and cut/copy and pasted elsewhere, grouping rows and allowing them to be expanded/collaspsed etc ?

The Devex Spreadsheet does everything except for allowing any data to be attached to a cell 😞

Perhaps by including "grid" in your post you have confused the issue. From the thread so far, I think you want:
- a visual component which has Excel I/O capabilities

- in particular, the ability to have the cell linked to an object of some sort.

 

Since I do not know the answer myself, does Excel support the attached object? Or is that simply something you need in your UI?

If the latter, then you may find looking at TMS FlexCel useful. It is a very capable Excel interface I have used for several years. I think you will find you need a hybrid solution to meet your requirements.

Share this post


Link to post
2 hours ago, Bill Meyer said:

Since I do not know the answer myself, does Excel support the attached object? Or is that simply something you need in your UI?

If the latter, then you may find looking at TMS FlexCel useful. It is a very capable Excel interface I have used for several years. I think you will find you need a hybrid solution to meet your requirements.

Just my UI. The customer currently uses Google sheets as the UI and then copies data in to various other apps etc. They're after a similar UI, but with everything else automated. I've looked at various UI ideas and I too have come to the conclusion that for this particular task the excel feel is the best for the job. The solution doesn't need to be able to export in to excel or google sheets format and must be completely self contained i.e not just an automation of excel or sheets.

Share this post


Link to post
4 minutes ago, david_navigator said:

Just my UI. The customer currently uses Google sheets as the UI and then copies data in to various other apps etc. They're after a similar UI, but with everything else automated. I've looked at various UI ideas and I too have come to the conclusion that for this particular task the excel feel is the best for the job. The solution doesn't need to be able to export in to excel or google sheets format and must be completely self contained i.e not just an automation of excel or sheets.

Then from my own experience, I would say you will have to work up your own solution. The DevExpress component is almost certainly the most full-featured of what you will find in the marketplace.

  • Like 1

Share this post


Link to post

I haven't used the Develop Express spreadsheet (except that it seems that all their other controls now has dependencies on it 😞) but I would think it'd be trivial to maintain a dictionary on the side that links objects to cells...?

type
  TCellReference = record
    Row: integer;
    Column: integer;
  end;

  TCellStuff = TObjectDictionary<TCellReference, TObject>;

Also, if the spreadsheet architecture is anything like their other controls, then you should be able to customize what class is used to represent cells.

  • Like 1

Share this post


Link to post

The TMS component to use would be the TAdvSpreadGrid if you were looking at TMS. 

 

MAKE THE GRID FORMULA-AWARE WITH TADVSPREADGRID

https://www.tmssoftware.com/site/gridpack.asp

 

  • Simple formula editing interface
  • Auto recalculation
  • Single cell recalculation, full recalculation
  • Extensive range of mathematical functions
  • Save with formulas
  • Single cell references in formulas
  • Cell range formulas
  • Formula precision for grid on cell basis
  • Display formulas or formula results
  • Date / time functions
  • Intelligent formula aware copy and paste
  • Can be extended with custom functions
  • Cell names
  • Cell name mode can be RxCy style or A1-style
  • Formula & constants libraries
  • Inter grid formulas
Edited by Martin Sedgewick

Share this post


Link to post

I don't think you'll find anything better than the DevEx one but you will have to buy all of their VCL components,

Edited by KenR

Share this post


Link to post
23 minutes ago, KenR said:

I don't think you'll find anything better than the DevEx one but you will have to buy all of their VCL components,

Luckily I already have the DexEx & TMS controls mentioned in this thread and I have the budget for others if something suitable raised its head 🙂

Share this post


Link to post

There are but a very few things i have not been able to tweak/add/implement using DevExpress. 15 years back i had some patching requirements but since a rewrite 4 years back, none, "just" inheritance. I have not used the spreadsheet much, but it would surprise me if your goal could not be achieved - are you stuck in an older DX version?

Share this post


Link to post

Flexcel is in a class of it's own - it's non-visual so it's perfect for use with a virtual grid (the TMS FNC grid works in virtual mode). If you need to store the object with the workbook then use custom document properties (Flexcel handles this). You serialize your objects to XML and store them in the workbook. You then just need to keep track of which object applies to which cell - use named cells/ranges and you don't need to keep track of possible row/column insertions/deletions.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×