ToNi,
If you want someone to help debug a VI, as opposed to answer a question, then it's really best to attach the VI to your forum post (I see Dennis has beaten me with this request!). I also suggest that you give an explicit LabVIEW error number and exact error message when describing a problem.
By your description, either the Control Name input string isn't quite right (it is case-sensitive), or the datatype you've connected to the Value input doesn't exactly match the VI's input pane datatype. The Set Control Value [Variant] method doesn't do any coercion at all, but instead just generates an error if the input datatype differs in any way from the expected datatype. That means you'll get an error even if you do something as innocent as connecting an I32 numeric when the called VI expects a U32.
So, the solution is probably to carefully check your datatypes. If it's a cluster, make sure all component types match exactly and that the cluster order is identical, etc. The best way to ensure you don't run into a problem like this is to go to the subVI, copy the input control, and then paste it into the calling VI.
Regards,
John