earnings_2016.xls is a newer/better version of the older earnings.xls Excel file that retrieves earnings dates from various sources (requires Windows).


  1. Download earnings_2016.xls (File Size:54.0 KiB, Total downloads: 5058, Last Updated: January 25, 2016)
  2. Enter Stock Symbols in Column A
  3. Press “Get Earnings”


One of the most downloaded files on exceltrader.net is the original version of earnings.xls. The earnings dates are retrieved from various sites that often change. After a source made a change, it was common for earnings.xls to stop working until I had time to update it.

earnings_2016.xls (File Size:54.0 KiB, Total downloads: 5058, Last Updated: January 25, 2016) is a complete do over with an attempt to make it very easy for a VBA beginner to make a change (or customize) and get things working again without having to wait for me to do it. In addition, it will be faster for me to update as needed.

As an example, on any page that contains an Earnings Date, view the html source and find a unique string near the date. On line 6 below, a value that is currently working on yahoo is “Earnings Date:”. The next string we’ll use is yfnc_tabledata1″> between the first string and the date and that’s all we need to find the date.

Screen Shot 2016-01-24 at 7.55.50 PM

If the site changes the “Earnings Date:” to something like “Earn Date:”, then the code will stop working. Most likely it can be fixed simply by changing line six below in earningsmodule.bas. (Most likely the classes won’t need to be modified.)

The exported module and classes are available on github. If you spend time making additions or fixes that you would like to share, consider a pull request.

54.0 KiB


  1. Thanks for this!
    However, Zack's seems to transpose the Month and Day. For example, August 3rd becomes March 8th

  2. I've been using your old sheet for over a year - it's fantastic! Thank you for updating!!!

Speak Your Mind