Assuming that strTemplate includes the full path to the presentation that particular error should not occur. As you appear to be using late binding to PowerPoint you will need to use the numeric values of PP specific commands. Without access to the workbook and the presentation I cannot validate the rest of your code, but the following should get you closer to your target.
Option Explicit
Sub Xls2Ppt()
Dim objPPT As Object
Dim Shapes As Object
Dim sR As ShapeRange
Dim pptPres As Object
Dim pptSlide As Object
Dim pptShape As Object
Dim MacroFile As String
Dim strTemplate As String
Dim strSheet As String
Dim strTitle As String
Dim intTotalSlide As Integer
Dim i As Integer
Dim j As Integer
Dim LastRow As Integer
Dim SlideCount As Long
MacroFile = ActiveWorkbook.Name
strTemplate = Range("C4")
strSheet = Range("C5")
LastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
intTotalSlide = LastRow - 5
On Error Resume Next
Set objPPT = GetObject(, "Powerpoint.Application")
If Err Then
Set objPPT = CreateObject("PowerPoint.Application")
End If
On Error GoTo 0
objPPT.Visible = True
objPPT.Presentations.Open strTemplate
objPPT.ActiveWindow.ViewType = 1
j = objPPT.Slides.Count 'count slides
j = 2
i = 6
Windows(MacroFile).Activate
Sheets("Macro").Select
strSheet = Range("C" & i)
strTitle = Range("D" & i)
Sheets(strSheet).Select
' 1st slide- Q1
'********************************
Windows(MacroFile).Activate
Sheets("Macro").Select
strSheet = Range("C" & i)
strTitle = Range("D" & i)
Sheets(strSheet).Select
'*********************************
'Copy Q1
'Range("D3", "L" & Sheet6.Range("F65536").End(xlUp).Row).Select
Range("D2:K24").Select
Selection.Copy
SlideCount = pptPres.Slides.Count
Set pptSlide = pptPres.Slides.Add(j, 11)
objPPT.ActiveWindow.View.GotoSlide pptSlide.SlideIndex
pptSlide.Shapes.PasteSpecial 1
With pptSlide
.Shapes(1).TextFrame.TextRange.Text = strTitle
End With
pptSlide.Shapes(pptSlide.Shapes.Count).Select
Set sR = objPPT.ActiveWindow.Selection.ShapeRange
sR.Align msoAlignMiddles, True
objPPT.ActiveWindow.Selection.ShapeRange.Top = 120
sR.ScaleHeight 0.9, msoTrue
sR.ScaleWidth 0.9, msoTrue
sR.Left = 120
'2nd slide - Q2
'************************************
j = j + 1
i = i + 1
Windows(MacroFile).Activate
Sheets("Macro").Select
strSheet = Range("C" & i)
strTitle = Range("D" & i)
Sheets(strSheet).Select
'*************************************
'Copy Q2
'Range("D3", "L" & Sheet6.Range("F65536").End(xlUp).Row).Select
Range("D28:K49").Select
Selection.Copy
SlideCount = pptPres.Slides.Count
Set pptSlide = pptPres.Slides.Add(j, 11)
objPPT.ActiveWindow.View.GotoSlide pptSlide.SlideIndex
pptSlide.Shapes.PasteSpecial 1 'ppPasteBitmap
With pptSlide
.Shapes(1).TextFrame.TextRange.Text = strTitle
End With
pptSlide.Shapes(pptSlide.Shapes.Count).Select
Set sR = objPPT.ActiveWindow.Selection.ShapeRange
sR.Align msoAlignMiddles, True
objPPT.ActiveWindow.Selection.ShapeRange.Top = 120
sR.ScaleHeight 0.9, msoTrue
sR.ScaleWidth 0.9, msoTrue
sR.Left = 120
'3 slide - Q3
'************************************
j = j + 1
i = i + 1
Windows(MacroFile).Activate
Sheets("Macro").Select
strSheet = Range("C" & i)
strTitle = Range("D" & i)
Sheets(strSheet).Select
'*************************************
'Copy Q3
'Range("D3", "L" & Sheet6.Range("F65536").End(xlUp).Row).Select
Range("D55:K76").Select
Selection.Copy
SlideCount = pptPres.Slides.Count
Set pptSlide = pptPres.Slides.Add(j, 11)
objPPT.ActiveWindow.View.GotoSlide pptSlide.SlideIndex
pptSlide.Shapes.PasteSpecial 1
With pptSlide
.Shapes(1).TextFrame.TextRange.Text = strTitle
End With
pptSlide.Shapes(pptSlide.Shapes.Count).Select
Set sR = objPPT.ActiveWindow.Selection.ShapeRange
sR.Align msoAlignMiddles, True
objPPT.ActiveWindow.Selection.ShapeRange.Top = 120
sR.ScaleHeight 0.9, msoTrue
sR.ScaleWidth 0.9, msoTrue
sR.Left = 120
End
End Sub