How can I display live data on TV Monitor from an Access database without using any third party plug in or internet access?

Greetings Experts!

I had a custom website built months ago that ran on a SmartTV as an info kiosk (Running webpage in Chrome kiosk mode). It was coded to refresh every 10 mins and pull info from an Access database.

Then the IT department decided we can't do that anymore. They removed Chrome from all systems (so that we can't use apps), blacklisted my website and then locked both the SmartTV and computer from getting internet access ugh!!

I was told to use a looping PowerPoint presentation (boring!). I need to show current data pulled from my MS Access database and PowerPoint has to be opened/closed to refresh links. I asked IT if they could make a batch file to open/close the presentation and they said no that it violated IT policy. I don't even have access to the cmd prompt or powershell. :(

There is a third party program called DataPoint designed to do what I want but guess what? Nope! We can't use it. It's not approved by IT and we have no admin rights to install any third party solution to help with this.

Does anybody have another solution?  Maybe use VBA to refresh the PowerPoint links?
Gemini GVBA & Database ProgrammerAsked:
Who is Participating?
Jamie GarrochConnect With a Mentor PowerPoint Consultant & DeveloperCommented:
See this article which explains where code is pasted to in the PowerPoint VBE.
Jamie GarrochPowerPoint Consultant & DeveloperCommented:
Your first option is move to a company where the IT department supports the needs of the business! That frustration aside, you "could" use VBA but given what you've said above, the IT folks could have disabled VBA too. It might be worth checking if you can run a simple "Hello World" add-in (like this one) before pursuing this approach. Once that's confirmed, you then need to work out if you can actually deploy an add-in. Back to IT?

If you can't run the add-in above, create your own as follows:

1. Start PowerPoint
2. Click Alt+F11
3. Insert a new Module
4. Paste this code into the module:
Sub Auto_Open()
MsgBox "HelloWorld",vbOkOnly,"It works!"
End Sub

Open in new window

5. Save the file as a PPAM, usually in %AppData%\Microsoft\AddIns

Then load your test add-in on one or more target machines:

1. Start PowerPoint
2. Click File / Options / Add-Ins
3. Change the Manage drop down to PowerPoint Add-ins... and click Go
4. Click Add New and locate the add-in you saved above
5. If the Hello World message doesn't display, you have a problem!
Dr. KlahnPrincipal Software EngineerCommented:
Write a Perl-scripted CGI page with periodic refresh?   Though they'll probably nix that too.
Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

Gemini GVBA  & Database ProgrammerAuthor Commented:
Thanks Jamie for the quick response. Yes we can use VBA and macros thank goodness or I would be looking for another job! I've used custom VBA for most of our excel spreadsheets. That's actually what I'm using in PowerPoint now. The excel spreadsheet is embedded into the PowerPoint but I have to close/open it to refresh the excel data.
Jamie GarrochPowerPoint Consultant & DeveloperCommented:
OK - great that you can keep your job ;-) DataPoint is excellent by the way (I used it in a previous job/life). I'm not sure what "content" you're trying to update in PowerPoint but this is some generic code of mine to grab content from Excel from the PowerPoint VBE that could point you in the right direction:

' ==========================================
' Module : ExcelToPowerPoint
' VBE : PowerPoint
' ==========================================

Option Explicit

' Set to true to use IntelliSense
' True requires adding a Reference to Microsoft Exel XX.X Object Library
#Const DevMode = False

' ===============================================================================
' PowerPoint Macro
' Purpose: Copies the first chart from the active sheet of the open Excel file
'          and then Pastes the chart as a PNG image on the slide in view in the
'          active presentation.
' Author: Jamie Garroch of
' Example calls:
'                 Raster : CopyRangeFromExcel ppPastePNG
'                 Vector : CopyRangeFromExcel ppPasteEnhancedMetafile
'                 Excel  : CopyRangeFromExcel ppPasteOLEObject
' ===============================================================================
Sub CopyRangeFromExcel(PasteType As PpPasteDataType)
#If DevMode Then
  ' Early bound Excel objects
  Dim oXL As Excel.Application
  Dim oWB As Workbook
  Dim oWS As Worksheet
  ' Late bound Excel objects
  Dim oXL As Object
  Dim oWB As Object
  Dim oWS As Object
#End If
  ' PowerPoint objects
  Dim oPres As Presentation
  Dim oSld As Slide
  Dim oShp As Shape
  On Error Resume Next
  ' Get a reference to the Excel instance
  Set oXL = GetObject(, "Excel.Application")
  If oXL Is Nothing Then
    MsgBox "Couldn't find Excel.", vbCritical + vbOKOnly, "Excel not open"
    Exit Sub
  End If
  ' Get a reference to the active sheet in Excel
  Set oWS = oXL.ActiveSheet
  If oWS Is Nothing Then
    MsgBox "Couldn't find Excel sheet.", vbCritical + vbOKOnly, "Excel sheet not found"
    Exit Sub
  End If
  ' Copy a chart from the active sheet
  ' Get a reference to the active presentation
  Set oPres = ActivePresentation
  If oPres Is Nothing Then
    MsgBox "Couldn't find presentation.", vbCritical + vbOKOnly, "Presentation not found"
    Exit Sub
  End If
  ' Get a reference to the slide in view
  Set oSld = ActiveWindow.View.Slide
  If oSld Is Nothing Then
    ' Slide not in view, use slide 1 instead
    Set oSld = oPres.Slides(1)
    If oSld Is Nothing Then
      MsgBox "Couldn't find slide.", vbCritical + vbOKOnly, "Slide not found"
      Exit Sub
    End If
  End If
  ' Paste the range that was copied from Excel to the PowerPoint slide in the required format
  oSld.Shapes.PasteSpecial PasteType
  ' Clean up
  Set oXL = Nothing: Set oWB = Nothing: Set oWS = Nothing
  Set oPres = Nothing: Set oSld = Nothing: Set oShp = Nothing
End Sub

Open in new window

Gemini GVBA  & Database ProgrammerAuthor Commented:
Thanks for the response Jamie, this code looks good but where are you putting it? I'm not familiar with how to put it in Powerpoints VBA as it's own module? Can you send me a generic example I can look at?
Gemini GVBA  & Database ProgrammerAuthor Commented:
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.