Given a parity-check matrix $H_m$ of a $q$-ary Hamming code, we consider a partition of the columns into two subsets. Then, we consider the two codes that have these submatrices as parity-check matrices. We say that anyone of these two codes is the supplementary code of the other one. We obtain that if one of these codes is a Hamming code, then the supplementary code is completely regular and completely transitive. If one of the codes is completely regular with covering radius $2$, then the supplementary code is also completely regular with covering radius at most $2$. Moreover, in this case, either both codes are completely transitive, or both are not. With this technique, we obtain infinite families of completely regular and completely transitive codes which are quasi-perfect uniformly packed.