I need help with the VBA code to download Stock Historic price Date in excel sheet on button click (baily on button click it downloads the data from the current date to the number of days I wish to access the data). given below is the format of it.

B1 (Cell Number) it will have Stock Symbol name (which I enter on my excel sheet) // enter manually by me
B2 (Current Date =NOW()) // by default setup to current date
B3 (reflects the last closed price) // automatic on button click for the stock symbol which I've entered in B1
B4 (Votality days, lets say 7, 20, 30, 50, 90, 180, 365 in Combo box) if I choose 50, it downloads the data for last 50 days from the current date in cell number B2 // selects manually by me
B5 (reflects the Maximum value, for the range in B4, for example: If I choose 50 in B4, it downloads the stock data of last 50 days and out of those 50 days, the highest price should show in Cell Number B5) will reflect when I click on Button // automatic on button click
B6 (reflects the Lowest value, for the range in B4, for example: If I choose 50 in B4, it downloads the stock data of last 50 days and out of those 50 days, the lowest price should show in Cell Number B6) will reflect when I click on Button // automatic on button click
B7 (reflects how many times Current Price (last closed price in Cell B3) went over its price for the selected date range...In B4 Cell if I select 7, it downloads the Date, Open Price, High Price, Low Price, Closed Price for last 7 days, how many times last closed price went over the last closed price. for example: last closed price is 30....range data for last 7 days (43, 31, 37, 38, 28, 29, 30) now as see 30 went over by 4 in last 7 days..it should reflect "4" the same in B7
B8 (reflects average change in price for the date range which I have selected in B4), lets say if I select 7 in B4...last traded prices for the last 7 days are as follows...
April 14, 2016 = 30
April 13, 2016 = 29
April 12, 2016 = 28
April 11, 2016 = 38
April 8, 2016 = 37
April 7, 2016 = 31
April 6, 2016 = 43
// (date 9, 10 weekends because of that not included)
Now, behind the scenes under vba code, it should calculate average in following ways...
31 - 43 = - 12
37 - 31 = 6
38 - 37 = 1
28 - 38 = -10
29 - 28 = 1
30 - 29 = 1
Total Sum is = -13 / 7 = -1.85
B9 (reflects average change in volume for the date range which I have selected in B4), lets say if I select 7 in B4...last volume for the last 7 days are as follows...
April 14, 2016 = 30000
April 13, 2016 = 29000
April 12, 2016 = 28000
April 11, 2016 = 38000
April 8, 2016 = 37000
April 7, 2016 = 31000
April 6, 2016 = 43000
// (date 9, 10 weekends because of that not included)
Now, behind the scenes under vba code, it should calculate average in following ways...
31000 - 43000 = -12000
37000 - 31000 = 6000
38000 - 37000 = 1000
28000 - 38000 = -10000
29000 - 28000 = 1000
30000 - 29000 = 1000
Total Sum is = -13000 / 7 = -1857

from A11, it shows the downloaded historic prices in the following format for the date range selected in B4(lets say for the last 7 days) it should dowload in excel sheet as follows // automatic on button click
Date Open High Low Close Volume "Change in High price" "Change in Low price" "Change in closed price" "Change in Volume"
April 14, 2016 29 33 29 30 30000 33 - 31 = -2 same for low price same for closed price same for volume
April 13, 2016 28 31 27 29 29000 31 - 40 = -9
April 12, 2016 38 40 25 28 28000 40 - 41 = -1
April 11, 2016 37 41 33 38 38000 41 - 39 = 2
April 09, 2016 31 39 34 37 37000 39 - 47 = -8
April 08, 2016 43 47 29 31 31000 47 - 44 = 3
April 07, 2016 42 44 41 43 43000