A motor controller comprising: an angle detection unit that changes an angle detection value (θdet) stepwise to a corresponding angle whenever an angle of a rotor of a motor having multi-phase windings reach each of a plurality of preliminarily set angles; a current detection unit that detects a current flowing through the multi-phase windings; a rotation state detection unit that detects a rotation state of the motor; a current command calculation unit that calculates a current command value which flows into the multi-phase windings based on a detection value of the rotation state; a current control unit that controls a current which flows into the multi-phase windings based on the angle detection value (θdet), a current detection value, and the current command value; and an angle error correction unit that, when a change frequency which is a reciprocal of a change period in which the angle detection value (θdet) changes stepwise is lower than a cutoff frequency of a feedback control system which controls the rotation state, estimates an angle error correlation value which correlates with an angle detection error which is an error of the angle detection value (θdet) with respect to an actual angle, based on the current command value, and corrects the current command value or the angle detection value (θdet) based on an estimation value (Δθ*) of the angle error correlation value, wherein the angle error correction unit changes the estimation value (Δθ*) of the angle error correlation value so that an absolute value of the angle detection error increases with respect to increase in the current command value, and the absolute value of the angle detection error decreases with respect to decrease in the current command value, wherein the current control unit controls the current which flows into the multi-phase windings on a dq-axis rotating coordinate system, which consists of a d-axis defined in a magnetic pole position of the rotor and a q-axis defined in a direction advanced to the d-axis by 90 degrees in an electrical angle and rotates according to the angle detection value (θdet), wherein the current command calculation unit calculates at least a current command value (Iqref) of the q-axis as the current command value, and wherein the angle error correction unit estimates the angle error correlation value based on the current command value (Iqref) of the q-axis, and corrects the current command value (Iqref) of the q-axis or the angle detection value (θdet) based on the estimation value (Δθ*) of the angle error correlation value, characterized in that the angle error correction unit estimates a cosine value of the angle detection error as the angle error correlation value. an angle detection unit that changes an angle detection value (θdet) stepwise to a corresponding angle whenever an angle of a rotor of a motor having multi-phase windings reach each of a plurality of preliminarily set angles; a current detection unit that detects a current flowing through the multi-phase windings; a rotation state detection unit that detects a rotation state of the motor; a current command calculation unit that calculates a current command value which flows into the multi-phase windings based on a detection value of the rotation state; a current control unit that controls a current which flows into the multi-phase windings based on the angle detection value (θdet), a current detection value, and the current command value; and an angle error correction unit that, when a change frequency which is a reciprocal of a change period in which the angle detection value (θdet) changes stepwise is lower than a cutoff frequency of a feedback control system which controls the rotation state, estimates an angle error correlation value which correlates with an angle detection error which is an error of the angle detection value (θdet) with respect to an actual angle, based on the current command value, and corrects the current command value or the angle detection value (θdet) based on an estimation value (Δθ*) of the angle error correlation value, wherein the angle error correction unit changes the estimation value (Δθ*) of the angle error correlation value so that an absolute value of the angle detection error increases with respect to increase in the current command value, and the absolute value of the angle detection error decreases with respect to decrease in the current command value, wherein the current control unit controls the current which flows into the multi-phase windings on a dq-axis rotating coordinate system, which consists of a d-axis defined in a magnetic pole position of the rotor and a q-axis defined in a direction advanced to the d-axis by 90 degrees in an electrical angle and rotates according to the angle detection value (θdet), wherein the current command calculation unit calculates at least a current command value (Iqref) of the q-axis as the current command value, and wherein the angle error correction unit estimates the angle error correlation value based on the current command value (Iqref) of the q-axis, and corrects the current command value (Iqref) of the q-axis or the angle detection value (θdet) based on the estimation value (Δθ*) of the angle error correlation value, characterized in that the angle error correction unit estimates a cosine value of the angle detection error as the angle error correlation value.