I misunderstood the first time, I believe this is correct now:
A = [1 2 4
3 4 5
4 1 2];
Av = num2cell(unique(A(:))', 1);
C = cellfun(@(x)(find(any((A == x)'))), Av, 'UniformOutput', false)
Results in
C{1} = [1 3];
C{2} = [1 3];
C{3} = [2];
C{4} = [1 2 3];
C{5} = [2];