A motor control device that controls a motor including coil groups , the motor control device comprising a controller , wherein the controller is configured to: calculate a current command value (I as *) corresponding to torque that should be generated by the motor ; divide the calculated current command value (I as *) into individual current command values (I as1 *, I as2 *) for the coil groups ; control power feeding to the coil groups independently for each of the coil groups based on a corresponding one of the individual current command values (I as1 *, I as2 *); set, for each one of the coil groups , an upper limit value (I UL1 , I UL2 ) of a corresponding one of the individual current command values (I as1 *, I as2 *); and when the individual current command value (I as1 *, I as2 *) for any one of the coil groups is limited to a value (I LIM ) that is smaller than a corresponding one of the upper limit values (I UL1 , I UL2 ), supplement a current amount limited in the individual current command value (I as1 *, I as2 *) by increasing the individual current command value (I as1 *, I as2 *) for at least a remaining one of the coil groups , characterized in that the controller includes a first calculator configured to calculate, for each of the coil groups , a difference between the individual current command value (I as1 *, I as2 *) prior to being limited for each of the coil groups and an actual value of current supplied to each of the coil groups , and a second calculator configured to add the difference calculated for each of the coil groups to the individual current command value (I as1 *, I as2 *) for at least another one of the coil groups that differs from a corresponding one of the coil groups . calculate a current command value (I as *) corresponding to torque that should be generated by the motor ; divide the calculated current command value (I as *) into individual current command values (I as1 *, I as2 *) for the coil groups ; control power feeding to the coil groups independently for each of the coil groups based on a corresponding one of the individual current command values (I as1 *, I as2 *); set, for each one of the coil groups , an upper limit value (I UL1 , I UL2 ) of a corresponding one of the individual current command values (I as1 *, I as2 *); and when the individual current command value (I as1 *, I as2 *) for any one of the coil groups is limited to a value (I LIM ) that is smaller than a corresponding one of the upper limit values (I UL1 , I UL2 ), supplement a current amount limited in the individual current command value (I as1 *, I as2 *) by increasing the individual current command value (I as1 *, I as2 *) for at least a remaining one of the coil groups , characterized in that the controller includes a first calculator configured to calculate, for each of the coil groups , a difference between the individual current command value (I as1 *, I as2 *) prior to being limited for each of the coil groups and an actual value of current supplied to each of the coil groups , and a second calculator configured to add the difference calculated for each of the coil groups to the individual current command value (I as1 *, I as2 *) for at least another one of the coil groups that differs from a corresponding one of the coil groups . <EOS>