John,
thanks for your comments. What do you mean by normalising the table
structure. Do you mean column headings like Year1, Year2, ...... instead of
2009, 2010 ...
No. I mean using TWO TABLES in a one-to-many relationship. The second table
would have fields like
DetailID <primary Key>
LinkID <foreign key to your main table>
ItemYear <Integer, e.g. 2007, 2008, 2009>
DataForThatYear
Rather than ten fields in your table for data for ten years, you would have
ten *RECORDS* in this table, one record for each year.
"Fields are expensive, records are cheap". Storing data - either a year
number, or a proxy for a year number - in a fieldname is reasonable in a
spreadsheet, but NOT in a relational table. Data should be stored *in fields*,
not in fieldnames! It's easy to create a Crosstab query to *display* the tall
thin table in a wide-flat form.