You still aren't making sense with this "constant" thing. Please look up what a constant is.
MyFunc is a function with no parameters (which you don't need in this case). What ever you tell it to return
in the function code will be returned. The only thing that would be "constant" (which is not the same as
A constant) is the value of the property your code tells it to return. If you change the tip text or tag text, the function will return the new value - presumably not until you save your design changes but I've not tested that point.
What you have discovered by using the immediate window is that the function automatically returns the value of the property you asked for - yet that property value (e.g. the control name) isn't a parameter that is passed to the function. More on that in the last paragraph. So it is dynamic in the sense that if the property value changes, so does the return value of the function. Here's proof where I changed the control name, tip text and tag text between iterations:
Whatever you did was incorrect or incomplete (e.g. you didn't save between design changes [not convinced that it is necessary but not tested by me] or you moused over 2 different controls between changes, or something else, because the images prove it works)
What I used to do up to this point is select a bunch of controls and for an event, specify (e.g.) = SomeFunction() and then go to each individual control event and add the control name. That meant having to edit as in = SomeFunction(txtDept) and in another, = SomeFunction(txtCust) etc, etc. I did not see you wanting to do that for 350 controls so I looked found that code (as I stated, it is not original by me).