I have two questions regarding this please

I want to create a chart based on a named range which changes size depending on 2 cell values. I have created the named range which varies in size using =OFFSET(Results!$B$1,0,0,Results!$A$2,Results!$A$3). The named range is either B1:C3 or B1:I3. I am trying to create a chart but the Chart Data Range keeps changing from the named range to the actual cell range if that makes sense. I have to go back in and change it to the named range each time.

Once I have this cracked then I need to change the chart type depending on the named range i.e. if it is B1:C3 then Column Chart, if it is B1:I3 then Pie chart.

Any suggestions please?