An electric tool, comprising: a motor; a motor control device; an inverter circuit unit being configured to generate a drive voltage (Va) from a direct-current power supply and output the drive voltage (Va) to the motor; and an input/output unit being a user interface, the input/output unit being configured to determine a target value (ω 1 ∗) of a speed of the motor in accordance with an operation given by a user, and give the target value (ω 1 ∗) to the motor control device, the motor control device being configured to determine and update a command value (ω 2 ∗) of the speed of the motor based on the target value (ω 1 ∗) of the speed of the motor given by the input/output unit, and determine target values (v v ∗; v u ∗; v w ∗) of the drive voltage (Va) such that the speed of the motor matches the command value (ω 2 ∗) and give the target values of the drive voltage (Va) to the inverter circuit unit, the motor control device being configured to update the command value (ω 2 ∗) of the speed of the motor based on a parameter relating to at least one of a voltage (V dc) of the direct-current power supply for the motor or a magnitude of a load applied to the motor during rotation of the motor, and wherein, if the parameter does not satisfy a switching condition, the motor control device is configured to cause the command value (ω 2 ∗) to be close to the target value (ω 1 ∗) of the speed of the motor, when the command value does not match the target value, and to maintain the command value (ω 2 ∗), when the command value matches the target value, and wherein, if the parameter satisfies the switching condition, the motor control device is configured to reduce the command value (ω 2 ∗). a motor; a motor control device; an inverter circuit unit being configured to generate a drive voltage (Va) from a direct-current power supply and output the drive voltage (Va) to the motor; and an input/output unit being a user interface, the input/output unit being configured to determine a target value (ω 1 ∗) of a speed of the motor in accordance with an operation given by a user, and give the target value (ω 1 ∗) to the motor control device, the motor control device being configured to determine and update a command value (ω 2 ∗) of the speed of the motor based on the target value (ω 1 ∗) of the speed of the motor given by the input/output unit, and determine target values (v v ∗; v u ∗; v w ∗) of the drive voltage (Va) such that the speed of the motor matches the command value (ω 2 ∗) and give the target values of the drive voltage (Va) to the inverter circuit unit, the motor control device being configured to update the command value (ω 2 ∗) of the speed of the motor based on a parameter relating to at least one of a voltage (V dc) of the direct-current power supply for the motor or a magnitude of a load applied to the motor during rotation of the motor, and wherein, if the parameter does not satisfy a switching condition, the motor control device is configured to cause the command value (ω 2 ∗) to be close to the target value (ω 1 ∗) of the speed of the motor, when the command value does not match the target value, and to maintain the command value (ω 2 ∗), when the command value matches the target value, and wherein, if the parameter satisfies the switching condition, the motor control device is configured to reduce the command value (ω 2 ∗).