Crisjovano,
Sorry! I misunderstood your first post.
What I would do is first create a single directional borehole line, turn it into a route, and then locate the borehole intervals along its length.
This is what I did recently for this very exercise using available tools.
1) Your X, Y, Z, azimuth, dip, and depth values are the same for every borehole, so normalize your intervals table into a table where each row is a different borehole. Then create two new fields, 'horizontal' and 'vertical' for instance. The horizontal value is going to be the length of the line in 2d as if you were looking down on the line in plan view. The vertical value is going to be the distance down from the plan view horizon to the bottom of the borehole. Horizontal = cos(dip) * depth and Vertical = sin(dip) * depth.
2) Create 2d lines using the 'Bearing Distance to Line' tool in Data Management. Use the X, Y, azimuth, and HORIZONTAL (not depth) fields.
3) Put these lines in a Z-aware feature class and enter the borehole collar elevation ('Z') and borehole bottom elevation ('Z' - 'vertical') for each line.
4) Turn these lines into routes using the Create Routes tool. Take care with the coordinate priority so that your boreholes get measured from top to bottom and use the 'ONE FIELD' parameter for the measure source and set From-Measure Field to the depth value.
5) Use the Locate Features Along Routes tool to place the borehole intervals along the measured borehole lines.
If you need to automate this, I would recommend python over ArcObjects