(1) I have never seen NIntegrate[x^a, {a, 1., 2., .1}]
do anything other than return unevaluated. Below is the behavior i get every time.
In[89]:= NIntegrate[x^a, {a, 1., 2., .1}]
During evaluation of In[89]:= NIntegrate::inumr: The integrand x^a has evaluated to non-numerical values for all sampling points in the region with boundaries {{1.,2.}}.
(* Out[89]= NIntegrate[x^a, {a, 1., 2., 0.1}] *)
Notice the output is the same as the input (that's what "returning unevaluated" means). If you are getting anything different from this, then either x
had been given a value somewhere, or else we (at Wolfram Research) really need to see a screen shot, and also the notebook itself, for further diagnosis.
(2) As had been noted, the use of {a, 1., 2., .1}
as an integration range is suspect. It almost certainly does not do whatever you might be thinking it does.
(3) One can (and typically does) define a function to do a parametrized numeric integration. I show a very simple example of this below, based on the integrand under discussion.
f[x_?NumericQ] := Integrate[x^a, {a, 1., 2.}]
Table[f[x], {x, .1, 1., .1}]
(* Out[96]= {0.0390865033713, 0.0994135895295, 0.174422544467, \
0.261925600305, 0.360673760222, 0.469827645353, 0.588771382932, \
0.717027218836, 0.854209942293, 1.} *)