@supermanPunch and @Manish540 Thank you for responding so quickly. Please see full VB.NET below. The only other activities in this particular .xaml are assign activities for local folders (which are definitely correct).
Dim arr_Metrics(0 To 3, 0 To 3) As String 'Define array of public variables
Dim excel As Microsoft.Office.Interop.Excel.Application
Dim wb_InputReport As Microsoft.Office.Interop.Excel.Workbook
Dim ws_Metrics As Microsoft.Office.Interop.Excel.Worksheet 'Dim excel stuff
Dim I As Integer, J As Integer
Dim ppt_App As Microsoft.Office.Interop.PowerPoint.Application, ppt_Pres As Microsoft.Office.Interop.PowerPoint.Presentation, ppt_Slide As Microsoft.Office.Interop.PowerPoint.Slide 'Dim ppt stuff
Dim filepath_PPT As String, filename_PPT As String
Dim wkb As Microsoft.Office.Interop.Excel.Workbook
Dim AlreadyOpen_Excel As Boolean
Dim ppt As Microsoft.Office.Interop.PowerPoint.Presentation
Dim AlreadyOpen_PPT As Boolean
'Check Excel Open
On Error Resume Next
wkb = excel.Workbooks(strInputReport)
AlreadyOpen_Excel = Not wkb Is Nothing
wkb = Nothing
'Check PPT Open
On Error Resume Next
ppt = ppt_App.Presentations(strSlide)
AlreadyOpen_PPT = Not ppt Is Nothing
ppt = Nothing
'Check if wb is already open then Set Excel references
If AlreadyOpen_Excel Then
wb_InputReport = excel.Workbooks(strInputReport)
Else
wb_InputReport = excel.Workbooks.Open(Filename:=strInputReport)
End If
ws_Metrics = CType(wb_InputReport.Worksheets(“Metrics”),Microsoft.Office.Interop.Excel.Worksheet)
'1st Column
arr_Metrics(0, 0) = Math.Round((CDbl(ws_Metrics.Range(“D5”).Value) * 100), 2) & “%”
arr_Metrics(1, 0) = Math.Round((CDbl(ws_Metrics.Range(“D6”).Value) * 100), 2) & “%”
arr_Metrics(2, 0) = Math.Round((CDbl(ws_Metrics.Range(“D7”).Value) * 100), 2) & “%”
arr_Metrics(3, 0) = Math.Round((CDbl(ws_Metrics.Range(“D9”).Value) * 100), 2) & “%”
'2nd Column
arr_Metrics(0, 1) = CStr(ws_Metrics.Range(“E5”))
arr_Metrics(1, 1) = CStr(ws_Metrics.Range(“E6”))
arr_Metrics(2, 1) = CStr(ws_Metrics.Range(“E7”))
arr_Metrics(3, 1) = CStr(ws_Metrics.Range(“E8”))
'3rd Column
arr_Metrics(0, 2) = CStr(ws_Metrics.Range(“F5”))
arr_Metrics(1, 2) = CStr(ws_Metrics.Range(“F6”))
arr_Metrics(2, 2) = CStr(ws_Metrics.Range(“F7”))
arr_Metrics(3, 2) = CStr(ws_Metrics.Range(“F8”))
'4th Column
arr_Metrics(0, 3) = CStr(ws_Metrics.Range(“G5”))
arr_Metrics(1, 3) = CStr(ws_Metrics.Range(“G6”))
arr_Metrics(2, 3) = CStr(ws_Metrics.Range(“G7”))
arr_Metrics(3, 3) = CStr(ws_Metrics.Range(“G8”))
'Check if open and Reference presentation
If AlreadyOpen_PPT Then
ppt_Pres = ppt_App.Presentations(filename_PPT)
Else
ppt_Pres = ppt_App.Presentations.Open(filepath_PPT & filename_PPT)
End If
'Save as new document
ppt_Pres.SaveAs (filepath_PPT & “TEST PPT OUTPUT”)
'Define slide
ppt_Slide = ppt_Pres.Slides(1)
For I = 1 To 4
For J = 1 To 4
ppt_Slide.Shapes(“shp_” & I & “-” & J).TextEffect.Text = arr_Metrics(I, J)
Next J
Next I
'Save/Close Presentation and Kill ppt application
'With ppt_Pres
’ .Save
’ .Close
'End With
ppt_Pres.Save
ppt_Pres.Close
ppt_App.Quit