Run and you'll see it crashes (Access Violation)
You'll need to create the component (and free it as soon as you don't use it anymore

If you use the debugger (yes, Delphi has a good one, learn to use it), you'll see that item (or in your case tblName) is nil, and nil has nothing, so calling nil.Caption (or nil.Whatever) will raise an AV.

You are correct, I'm still thinking as a DOS programmer. I've tried to find OOP courses but living here in Christchurch New Zealand my options are nil. A Java course is $3000 or a BSc at the University are my options.

I've tried some online tutorials but they seem to raise more questions than answers!!

The long term goal is do up-skill my programming.

PS you code does not crash - it changes the name of the form to 'Crash'

My short term issue is, find all the comp on a form with a prefix, say eMaster and retrieve the data from a data module table using part of the editbox name.

eMasterMEMNAME.Text gets the contents of the field MEMNAME from the table tblMaster in the data module.

I can find the components on the form, strip the names and build the required strings but I cannot find the syntax to retrieve the data from the data module.

The components do exist in the data module but I cant find how to access them without using dbEdit boxes.

Split it up, so you can validate. If for some reason a component cannot be found an AV will be thrown. Furthermore, you do a hard cast, without 100% knowing that the found component is of that type. This can also be validated if you split things up.