Learned this from a post by Douglas:
SeedRnd(MilliSecs()) Dim pickarray(11) For a=0 To 11 pickarray(a)=a Next Dim gridarray(2,3) c=11 For a=0 To 2 For b=0 To 3 d=Rand(0,c) gridarray(a,b)=pickarray(d) pickarray(d)=pickarray(c) c=c-1 Next Next Print gridarray(0,0)+" "+gridarray(0,1)+" "+gridarray(0,2)+" "+gridarray(0,3) Print gridarray(1,0)+" "+gridarray(1,1)+" "+gridarray(1,2)+" "+gridarray(1,3) Print gridarray(2,0)+" "+gridarray(2,1)+" "+gridarray(2,2)+" "+gridarray(2,3) WaitKey()