This paper focuses on transmit precoding for multiuser MIMO downlink systems. In multiuser MIMO systems, multiuser interference (MUI) and noise are two well-known factors with respect to the system's performance. Block diagonalization (BD) method is proposed to completely eliminate MUI by placing the intended users in the nullspace of all the unintended users. But the BD method imposes a condition on the relation between the number of transmit and receive antennas. In addition, BD method causes the noise enhancement due to not considering noise's influence. Thus, at low and medium signal-to-noise ratio (SNR) regime, the performance of the BD scheme is poor. In this paper, we propose a novel precoding approach for users with multiple antennas to overcome the above mentioned drawbacks of the BD method for multiuser MIMO precoding systems. Simulation results confirm that the proposed algorithm achieves performance improvement over the conventional BD scheme with low complexity. The effect of channel estimate errors on system performance is also studied.