Actually, it can be done! It's a new feature in VB6.

Look into CallByName.

Here's a sample usage:
MsgBox CallByName(Form1, "Caption", VbGet)