dacs.doc electric

 

Sometimes You Have to Reinvent the Wheel.

By Richard F. DiFranco

 

Quattro Pro has a bug.

I recently bought a new computer. WordPerfect and Quattro Pro came pre-installed. I keep a spreadsheet with the mileage for my Honda Civic. Each row has miles to date, miles traveled on the current fill up, and gallons. I also convert the miles to kilometers and the gallons to liters. I also calculate kilometers per liter but that's not the problem nor important right now. At the bottom of certain columns I have formulas (built in functions) to tell me the high (Max), low (Min) and Average (Average). I use named ranges on the columns to plug into the formulas. Each time I fill up I add a row to the spreadsheet. To include the new row in the formula, I have to change the range. This worked fine on earlier versions of Quattro Pro and it was not a lot of trouble under Excel. Under the present version of Quattro Pro, it is much more arduous.

To change a range, I bring up a dialog box which has a list of "cell names", a text box for specifying the range, and buttons for Add, Delete, Close, Cancel, and Help. Adding a new range is nota problem. Modifying an existing range takes a lot of doing. The Help for modifying says to choose a name, type the new coordinates and click Add. However, this is where I think there is a bug because as soon as I click on a range (cell) name the add button grays out. Under older versions of Quattro pro there was an OK button to effect the change. Now I have to delete the name and range and reenter the whole thing.

After going through this for a few weeks and not getting help from Corel, somehow it occurred to me that if I put the range into another cell I could reference the contents of that cell as the range that I wanted. I looked for functions that would return a range and found none. Finally I found a function named "@@(). @@() takes an argument of a cell reference and returns the contents of the referenced cell.

Now I have my ranges defined under each column and each of the Min, Max and Average functions get the appropriate range from @@(). It looks something like this. The contents of Cell C17 is d2..d9. The Min function in column C looks like this:

Min(@@(c17))

Changing the ranges each time I enter a new row is easier than with either Quattro Pro or Excel.
It also occurred to me that this technique can be used in Excel as well if you don't like the way ranges are handled.

They say that programmers will sometimes make three right turns in order to turn left. Sometimes you have to reinvent the wheel to keep things rolling.


John Heckman is president of Heckman Counsulting, specializing in software integration for law firms, and is a frequent
contributor to dacs.doc. You can reach John at heckman@heckmanco.com

BackHomeNext