Good software must be maintainable. It is very rarely the case that a piece of software is developed once and then never nedds to be changed again during its lifetime. This is especially true of user-developed software such as spreadsheets, whose big advantage is that they are easily modified. Even if the requirements do not […]


The notion of abstraction is extremely important for writing good programs or designing good systems. Basically, the idea is that you want to avoid getting hung up on the details: you want to separate the things that change from those that don’t. In Excel spreadsheets the easiest example of abstraction is the use of names. […]

Names can be local to worksheets

Many names in Excel are global in scope: the same name means the same thing wherever it is used. For example, the name Inflation might refer to cell B2 on worksheet Costs. Often, though, you may have many similar sheets; for example, an Costs sheet for each year of a 5 year business plan. In […]