Excel can read cells aloud, which is a quick way to check figures you’ve typed from a paper report. These VBA macros read a selection, read each cell as you type, or speak any message.
Works inExcel 2010 and later, Windows and Mac
UndoNot possible. Save a copy first
Save asMacro-Enabled Workbook (.xlsm)
New to macros? See how to use the macros on this site: copy the code, paste it into a module with Alt + F11, and run it with Alt + F8.
Table of Contents
Read the selected cells aloud
Sub SpeakSelection()
Dim c As Range
For Each c In Selection
If c.Text <> "" Then Application.Speech.Speak c.Text
Next c
End Sub
c.Text reads values the way they’re displayed, so ₹1,250.00 is read as formatted.
Read each cell as you press Enter
Sub SpeakOnEnterOn()
Application.Speech.SpeakCellOnEnter = True
End Sub
Sub SpeakOnEnterOff()
Application.Speech.SpeakCellOnEnter = False
End Sub
Turn it on, then type your entries: Excel reads each one back as you press Enter.
Speak a message
Sub SayDone()
Application.Speech.Speak "Your report is ready."
End Sub
Add this line to the end of any long-running macro so it tells you when it’s finished.
Without a macro
- Go to File → Options → Quick Access Toolbar, choose All Commands.
- Add Speak Cells and Speak Cells on Enter, then click OK.
- Select cells and click Speak Cells.
Things to know
- Text to speech works in Excel for Windows only.
- It uses the voice set in Windows’ Settings → Time & Language → Speech.
- Long selections take a while to read. Press Esc to stop.