VideoPhoto

17 May, 2021

Presentations in Excel

If most of your work, you do for presentations, comes from Excel, there is no reason to use the PowerPoint instead of Excel itself for preparing your demonstration.

In fact, all your charts, tables, forms, textual info, background graphics, and even sounds, can be quite easily presented and put in order in Excel worksheets.  All the hassle with extra work of copying and pasting into PowerPoint could not be necessary.

Let's say, you've carried out your data analysis and prepared workbook with 30 perfect  worksheets ('slides') for your quarterly presentation. How would you proceed to get ready for reporting your work? Switching to PowerPoint? Not necessarily.

If you'd decide to stay with Excel, the following steps could probably be more efficient way to go. 

First, put all your presentable worksheets in consecutive order in which they'll be presented.

Add a blank worksheet dedicated to a title page. Excel has all the tools needed to create an attractive design. Such a worksheet could show just the subject of your presentation or might be a bit more elaborated, as e.g. in this figure:


Similarly, you can add another worksheet for displaying "The end" page, if appropriate.

Plan for the time you'll require to properly present your content. If you want to stay in full control of time devoted to each of the worksheets, then you'd move from one sheet to the next one simply by using Excel shortcut CTRL+PgDn (or CTRL+PgUp) on your keyboard. But, if you'd prefer to switch from page to page automatically, then you could do it with help of a simple macro, where you'd display each page for e.g. 90 seconds, as in this example:

Sub PresentInExcel()
Dim i as Integer
For i = 1 To Application.Worksheets.Count
Application.Worksheets(i).Activate
Application.Wait (Now + TimeValue("0:01:30"))
Next i
End Sub

Your presentation will look better if you use Full Screen option and turn off Gridlines and Headings on each worksheet (in View>Show menu). This step can be also included in the macro as shown here:

Sub PresentInExcel()
Dim i As Integer
'Hide Excel features (filename,bars,tabs,headings,ribbon)
    ActiveWindow.Caption = ""
    ActiveWindow.DisplayHorizontalScrollBar = Fals
    ActiveWindow.DisplayVerticalScrollBar = False
    ActiveWindow.DisplayHeadings = False
    ActiveWindow.DisplayWorkbookTabs = False
    ActiveWindow.DisplayGridlines = False
    Application.DisplayStatusBar = False
    Application.DisplayFormulaBar = False
For i = 1 To Application.Worksheets.Count
    Application.Worksheets(i).Activate
    ActiveWindow.DisplayHeadings = False
    ActiveWindow.DisplayGridlines = False
    Application.Wait (Now + TimeValue("0:01:30"))
Next i
'Show all Excel features (filename,bars,tabs,headings,ribbon)
    ActiveWindow.Caption = ThisWorkbook.Name
    ActiveWindow.DisplayHorizontalScrollBar = True
    ActiveWindow.DisplayVerticalScrollBar = True
    ActiveWindow.DisplayHeadings = True
    ActiveWindow.DisplayWorkbookTabs = True
    ActiveWindow.DisplayGridlines = True
    Application.DisplayStatusBar = True
    Application.DisplayFormulaBar = True
    Application.ExecuteExcel4Macro "show.toolbar(""Ribbon"",True)"
End Sub

Options such as Zoom In/Out can also be used during formatting of your worksheets for presentation to focus viewers attention on some specific details.

If you decide on adding some sound/musical background while presenting your report you can do that in Excel as well. In such a case you would need to include some more VBA code to the Module holding your macro. You'd then be able to play any of WAV or MIDI files residing on your computer.

Overall, the following VBA procedures should be placed in your presentation Project Module of Project Explorer (accessible with CTRL+F11 shortcut):

Private Declare Function mciExecute Lib "winmm.dll" _
    (ByVal lpstrCommand As String) As Long          'MIDI files

Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" _
    (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long   'WAV files
Const SND_SYNC = &H0                    'WAV files
Const SND_ASYNC = &H1                  'WAV files
Const SND_FILENAME = &H20000    'WAV files


Sub PlayWAV()

'The WAV file is played asynchronously, i.e. execution continues while the sound is playing
'To stop code execution while the sound is playing, use this statement instead:
'                                       Call PlaySound(WAVFile, 0&, SND_SYNC Or SND_FILENAME)
'Replace the path and WAV file name with your own
WAVFile = "C:\Users\Roman\MyMusic\02 - The Road To Hell (Part II).WAV"
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
End Sub

Sub PlayMIDI()
'Replace the path and MIDI file name with your own
MIDIFile = "C:\Users\Roman\MyMusic\OCANADA.MID"
mciExecute ("play " & MIDIFile)
End Sub


Sub StopMIDI()
'Replace the path and MIDI file name with your own
MIDIFile = "C:\Users\Roman\MyMusic\OCANADA.MID"
mciExecute ("stop " & MIDIFile)
End Sub


Sub PresentInExcel()
'Use this macro to set up and run your presentable worksheets
Dim i As Integer
'Hide Excel features (filename,bars,tabs,headings,ribbon)
    ActiveWindow.Caption = ""
    ActiveWindow.DisplayHorizontalScrollBar = False
    ActiveWindow.DisplayVerticalScrollBar = False
    ActiveWindow.DisplayHeadings = False
    ActiveWindow.DisplayWorkbookTabs = False
    ActiveWindow.DisplayGridlines = False
    Application.DisplayStatusBar = False
    Application.DisplayFormulaBar = False
    Application.ExecuteExcel4Macro "show.toolbar(""Ribbon"",False)"
Call PlayWAV
For i = 1 To Application.Worksheets.Count
    Application.Worksheets(i).Activate
    ActiveWindow.DisplayHeadings = False
    ActiveWindow.DisplayGridlines = False
    Application.Wait (Now + TimeValue("0:01:30"))
Next i

'Show all Excel features (filename,bars,tabs,headings,ribbon)
    ActiveWindow.Caption = ThisWorkbook.Name
    ActiveWindow.DisplayHorizontalScrollBar = True
    ActiveWindow.DisplayVerticalScrollBar = True
    ActiveWindow.DisplayHeadings = True
    ActiveWindow.DisplayWorkbookTabs = True
    ActiveWindow.DisplayGridlines = True
    Application.DisplayStatusBar = True
    Application.DisplayFormulaBar = True
    Application.ExecuteExcel4Macro "show.toolbar(""Ribbon"",True)"
End Sub

This is just an example to be adapted for your specific project.

Happy presenting!

 

 

No comments:

Post a Comment

All comments are held for moderation. I reserve the right to edit, censor, delete and - if necessary - block comments.