Further development

<< Click to Display Table of Contents >>

Navigation:  Gekcel (Excel add-in) >

Further development

Previous pageReturn to chapter overviewNext page

At the moment, the Gekcel interface is rather basic, just enabling the Gekko statements SHEET and PRT to transfer data from Gekko to Excel, and the statement Gekko IMPORT<xlsx>gekcel; to transfer data from Excel to Gekko.

 

Some ideas and suggestions:

 

There are some questions about how the Gekko working folder is set, when an Excel workbook with an Gekcel add-in starts. If this poses problems, the user can always set the Gekko working folder manually with the Gekko statement option folder working = ... ;, but the issue should be investigated.

It is not at all clear how Gekcel.xlsm "knows" that it is coupled to a Gekcel.xll add-in. This information is not stored in Gekcel.xlsm, so somehow Windows keeps track of this.

The Quarterly National Accounts of Statistics Denmark have written the VBA functions Get_Gekko_Group() and Put_Gekko_Group() where the user can state a list of timeseries names, and a date range. This way, a limited part of the current worksheet can be operated on, limiting the scope for errors (in essence, keeping parts of the worksheet read-only). At the moment, Gekko only implements the first of these two, implemented as Gekko_GetGroup() function. There is also the question of using CSE array-functions, because they are a bit cumbersome. With some tricks, it is possible to state a VBA function in one cell and have the function "spill" into multiple cells. This is normally not legal in Excel (until the new dynamic arrays are common in Excel). The Central Bank of Denmark are exploring such Excel tricks for Gekcel, using a Windows timer to do it.

In the longer run, a Gekko Ribbon tab could be added to Excel, making it possible to use some of the functionality of Gekko by means of input dialog windows (point and click). For instance opening a particular bank, selection time period, selecting timeseries, and having these timeseries show up in an Excel workbook tab. And vice versa transfer data from such a workbook tab back to Gekko.

As an alternative or supplement, Excel functions could be added, so that the user can type =SomeGekkoFunction() in a cell, and get results displayed without using the VBA editor window at all.

The Gekko_Get() and Gekko_Put() calls could probably be omitted: these calls were mostly added to comply more tightly with a corresponding EViews interface for Excel. Perhaps a SHEET or PRT statement issued from Gekcel could itself append a Gekko_Get() call, and an import<xlsx>gekcel; issued from Gekcel could itself prepend a Gekko_Put() call?

Perhaps CLS called from Gekcel should wipe out (clear) the Immediate Window?

From Gekcel, it should be possible to write just import<xlsx>; instead of import<xlsx>gekcel;. Actually, at the moment, you can write anything as "filename" instead of gekcel.

Other statements could decorate Excel cells, something like prt <cell = 'B2'> 'Hello'; to print something to a particular Excel cell.

An option to avoid overwrites. At the moment, when using SHEET or PRT together with Gekko_Get(), cells may be overwritten. Also an option to wipe out the contents of the current worksheet tab, before writing to it with Gekko_Get().

If possible, some functionality that sets up the Excel Immediate Window in a Gekko-like fashion, without the user having to open and drag the window, etc.

Decorate Excel (Gekcel) with Gekko version number if somehow possible. To see the Gekko version number, you can issue a Gekko "tell gekkoversion();" from the Immediate Window (or from VBA). To see more info, you can alternatively issue a Gekko "tell gekkoInfo('short5');" (shows version, bitness, frequency, period, and working folder).

Is it possible to put all of the files inside one Excel .xll file? And how does the logic actually work regarding the Gekcel.xlsm, Gekcel.xll files? When moving or copying the .xlsm file, it seems to somehow remember the location of the Gekcel.xll and other files, without storing this information in the Gekcel.xlsm file itself.

Formatting: there are some issues with missing values turning up as 65535, but this is perhaps now fixed via the Handle_Cells() VBA function. Also, it would be nice if the Gekko formatting of values could carry over (4 decimals for levels, 2 decimals for percentages).