Provided is a numerical control device with which the tip position of a tool can be positioned with high precision in a three-dimensional space. This numerical control device (1) is equipped with a position correction unit (5) and an error data storage unit (10). The error data storage unit (10) stores error data for the X-, Y-, and Z-axes, that is, data pertaining to the angular error (Eax, Eay,Eaz) around the X-axis, the angular error (Ebx, Eby, Ebz) around the Y-axis, and the angular error (Ecx, Ecy, Ecz) around the Z-axis. The position correction unit (5) calculates a revision amount (Mx,My, Mz) in accordance with the tool length, on the basis of a command position (Ix, Iy, Iz), the error data, and tool length data for the tool being used, revises a correction amount (Cx, Cy, Cz) forthe command position (Ix, Iy, Iz), and uses the revised correction amount to correct the command position (Ix, Iy, Iz).