Excel like a finance pro.
Web function
STOCKHISTORY
Returns historical price data for a stock as an array.
When to use it
Historical prices for a stock or currency pair as a spilled table, with a choice of interval and properties (date, close, open, high, low, volume).
The shape of it
- Syntax
=STOCKHISTORY(stock, start_date, [end_date], [interval], [headers], ...)
Worked examples
Daily prices
=STOCKHISTORY("MSFT",DATE(2025,1,2),DATE(2025,1,10)) → dates and closing prices
Daily closes for a week.
Monthly prices
=STOCKHISTORY("MSFT",DATE(2024,1,1),DATE(2024,12,31),2) → twelve monthly rows
Interval 2 is monthly.
Chosen columns
=STOCKHISTORY("MSFT",TODAY()-30,TODAY(),0,1,0,1,3,4) → date, close, high, low
Properties chosen and ordered explicitly.
Worth knowing
- Currency pairs: "USD:EUR".
- Header argument 0 hides the header row.
- Data comes from Refinitiv and may lag; not for trading decisions.
Where it goes wrong
- #BUSY! while loading; #VALUE! for an unknown ticker or a date before listing.
- Requires Microsoft 365 with an internet connection.
Related
Learn the moves here — or let Wauvel run them on your numbers.
Meet your AI CFO →One CFO-grade Excel tip a week
A short, practical email for finance operators — functions, shortcuts, and the moves that save an afternoon. Free, unsubscribe anytime.