I advise using Interpolation and NIntegrate if your data is smooth. Otherwise, if there is noise in your data, the derivatives will be noisy and you will probably want to smooth the data and use BSplineFunction.
Here is an example using Interpolation.
You will need to arrange your data so that it corresponds to what Interpolation operates on:
yourData = {{0.00505051, 0., -18.164}, {0.010101,
0., -14.5719}, {0.0151515, 0., -9.9892}, {0.020202,
0., -5.792}, {0.0252525, 0., -1.7631}, {0.030303, 0., 0.9439}}
dataForInterpolate = yourData /. {x_, y_, z_} :> {{x, y}, z}
Unfortunately, we don't have enough of your data to continue, so here is an example with "example data"
exampleData =
Flatten[
Table[ {{x, y}, Sin[x] Cos[y]}, {x, 0, 1, .01}, {y, 0, 1, .01}], 1]
zInterpolation = Interpolation@exampleData
Get interpolators for derivatives:
dzdxInterpolation = Derivative[1, 0][zInterpolation]
dzdyInterpolation = Derivative[0, 1][zInterpolation]
Numerically integrate:
NIntegrate[
Sqrt[1 + dzdxInterpolation[x, y]^2 + dzdyInterpolation[x, y]^2 ], {x,
0, 1}, {y, 0, 1}]
Compare:
With[{dx = D[Sin[x] Cos[y], x ], dy = D[Sin[x] Cos[y], y ] },
NIntegrate[Sqrt[1 + dx^2 + dy^2], {x, 0, 1}, {y, 0, 1}]
]