Thanks for all the input - specifically to Bazzao for his PM.
As I anticipated, the 'solutions' provided (IMHO) don't really make the problem go away. Each label still has to be statically addressed (unless I'm missing something).
To explain a little further, I have data amassed over the past 11 years and will continue to grow with time. My project will record events - which are sporadic - and my initial thought was to have each year's data displayed for ease of comparison. The 'problem' was how to handle a new year without having to re-visit the project and add a new set of TLabels and then re-compile the 'new' program.
I now consider this to be a 'silly' approach and (for year-on-year comparison) a graph would be vastly superior. I'll still display annual data - probably two sets (this year - last year) - which will need a manageable 14 static labels rather than 77 (increasing).
This will still allow me to display historic data in numeric form with [back] and [forward] buttons and new years are easily handled with a dynamic array of records.
If it were possible to concatenate a name with the string of a number AND the compiler could resolve the result, maybe that would make dynamic label naming a possibility but I don't think it would benefit my current project.