No, there's no way to have MATLAB select an entry in a system dialog or type into a search box. [Short of using Java's Robot class, that is.]
To do what you describe, I'd split your program into two smaller functions. One is a computational function that accepts the file name, reads it in, and performs all the processing without any user intervention. The second is an interface function that prompts the user to select a file and passes that file name to the computational function. [Alternately you could have your combined function check nargin and prompt if the user didn't specify any input, though that would preclude you from being able to pass any additional inputs in or could require checking if the input specified was a valid file.]
If you've written your combined function the way I think, it may be as simple as pulling the uigetfile call out of that function (to turn it into the computational function.) Then your interface function would be nothing more than a call to uigetfile then a call to the computational function.
In the case where the user needs to select a file, they call the interface function and let it call the computational function.
In the case where you know the file on which you want to operate, call the computational function directly.