is it possible to recalculate only a cell or a range in VBA
There is a calculate method you can call on ranges:
Range("A1").Calculate
Try it out by putting =Now() in A1 and running Calculate and watch it update the seconds :) You can for a recalc of all the cells in a sheet by using:
Sheets(1).Calculate
See also: Microsoft MSDN, Excel Recalculation, 16 July 2012.