In each iteration of the for loop, you are looking for the closest value (regardless of whether it is larger or smaller)? One way to do that would
Jenkins = zeros(20,1);
J = zeros(20,1);
for i = 1:length(Leroy)
[Jenkins(i), J(i)] = min(abs(Leroy(i) - Matrix(:)));
end
Then Jenkins will be the minimum difference (in absolute terms), and J will be the linear index to the Matrix location. You can get the subscripted indices (i.e. row & column index) using
[m,n] = ind2sub([20,20],J);