I threw this together quickly for you
I use Globals to track my randoms, each on can be 1-10 (This is done by the Random1through10 Function)
I set all values to 0 every time I run the function - clearing any old numbers
Then I call my function 4 times to generate 4 numbers.
One by one I set my Globals, which means if NoRepeat1 is 0 then I haven't set any and NoRepeat1 is allowed to be any random I roll
The 2nd time the function runs NoRepeat1 wont equal 0 so it will go to the else NoRepeat2 equal 0. Now I need to verify NoRepeat2 is not the same as NoRepeat1. If it is the same I reset the value to 0 and run the function again. Which will make it to the same block and attempt again. If it's true I move on to NoRepeat3 which then checks the previous 2 in the same fashion. Last I check 4 against the previous 3.
Obviously this will get gross when trying to do more than 4 numbers but it will work for your case and you dont have to worry about Arrays ;)