A motor control device, comprising: a current instruction generation unit ( 102, 102A) configured to generate a current instruction based on a torque instruction for a motor; and a control unit ( 106, 108, 110, 112, 114) configured to control said motor based on said current instruction; characterized in that said current instruction generation unit ( 102, 102A) configured to generate, based on said torque instruction, a current instruction (k32, k42, k62) having a current phase determined in advance for each torque of said motor so as to suppress vibration of said motor, wherein said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a d-axis current with respect to variation in said torque instruction such that said d-axis current monotonously decreases in the negative direction with increase in said torque instruction, by finding a compromise between a d-axis current instruction for a low noise control and a d-axis current instruction for a maximum torque control, or said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a q-axis current with respect to variation in said torque instruction such that said q-axis current monotonously increases with increase in said torque instruction, by finding a compromise between a q-axis current instruction for a low noise control and a q-axis current instruction for a maximum torque control, or said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a control voltage of said motor with respect to variation in said torque instruction such that said control voltage monotonously increases with increase in said torque instruction by finding a compromise between a control voltage of said motor for a low noise control and a control voltage of said motor for a maximum torque control. a current instruction generation unit ( 102, 102A) configured to generate a current instruction based on a torque instruction for a motor; and a control unit ( 106, 108, 110, 112, 114) configured to control said motor based on said current instruction; characterized in that said current instruction generation unit ( 102, 102A) configured to generate, based on said torque instruction, a current instruction (k32, k42, k62) having a current phase determined in advance for each torque of said motor so as to suppress vibration of said motor, wherein said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a d-axis current with respect to variation in said torque instruction such that said d-axis current monotonously decreases in the negative direction with increase in said torque instruction, by finding a compromise between a d-axis current instruction for a low noise control and a d-axis current instruction for a maximum torque control, or said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a q-axis current with respect to variation in said torque instruction such that said q-axis current monotonously increases with increase in said torque instruction, by finding a compromise between a q-axis current instruction for a low noise control and a q-axis current instruction for a maximum torque control, or said current instruction generation unit is configured to generate said current instruction so as to restrict variation in a control voltage of said motor with respect to variation in said torque instruction such that said control voltage monotonously increases with increase in said torque instruction by finding a compromise between a control voltage of said motor for a low noise control and a control voltage of said motor for a maximum torque control.