I am getting a failure to compile error. I am trying to simplify things in this subroutine a bit since I have a lot of settings that I want to be able to control from within my excel sheet their are a lot of calls required and am looking for a more efficient way to write them.
I tried assigning the workbook and sheets to variables and then using the variable for the sheet i need to pull from to select the range of cells i need however the first instance
Build.Range("B:B").Column.Select.AutoFit
Is giving me the unable to compile error "Method or Data member not found"
I am calling 3 different subroutines all contained within the same module if that has any bearing on things and can post those if necessary but basically they just create files and position things on slides based on the settings provided from this Subroutine
Sub BuildTemplate()
Dim vNewPrimaryTemplatePath As String
Dim vDPI As Integer
Dim WB As Workbook
Dim Settings As Worksheet
Dim Build As Sheets
Dim Entry As Sheets
'Set Global Variables
Set WB = Workbooks("tool.xlsm") 'Set this to the name of the excel file
Set Settings = WB.Sheets("SETTINGS") 'Set this to the name of the settings tab
Set Build = WB.Sheets("BUILD") 'Set this to the name of the build tab
Set Entry = WB.Sheets("ENTRY") 'Set this to the name of the entry tab
vDPI = Settings.Cells(2, "B").Value
'Adjust column sizes
Build.Range("B:B").Column.Select.AutoFit
Build.Range("D:D").Column.Select.AutoFit
Build.Range("F:F").Column.Select.AutoFit
Build.Range("H:H").Column.Select.AutoFit
'Create Template Files
MoveFiles
'Open newly created Template File
Dim PPT As PowerPoint.Application
Set PPT = New PowerPoint.Application
PPT.Visible = True
PPT.Presentations.Open Filename:=vNewPrimaryTemplatePath
'Add Title Block
Call AddShape(False, "BUILD", Settings.Range("E2"), Settings.Range("E3"), Settings.Range("E4"), Settings.Range("E5"), Settings.Range("E6"))
'Add Delivery Block
Call AddShape(False, "BUILD", Settings.Range("E9"), Settings.Range("E10"), Settings.Range("E11"), Settings.Range("E12"), Settings.Range("E13"))
'Add Address Block
Call AddShape(False, "BUILD", Settings.Range("E16"), Settings.Range("E17"), Settings.Range("E18"), Settings.Range("E19"), Settings.Range("E20"))
'Add Items
Call AddShape(False, "BUILD", Settings.Range("H2"), Settings.Range("H12"), Settings.Range("H10"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H3"), Settings.Range("H13"), Settings.Range("H10"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H4"), Settings.Range("H14"), Settings.Range("H10"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H5"), Settings.Range("H15"), Settings.Range("H10"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H6"), Settings.Range("H12"), Settings.Range("H11"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H7"), Settings.Range("H13"), Settings.Range("H11"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H8"), Settings.Range("H14"), Settings.Range("H11"), Settings.Range("H16"), Settings.Range("H17"))
Call AddShape(False, "BUILD", Settings.Range("H9"), Settings.Range("H15"), Settings.Range("H11"), Settings.Range("H16"), Settings.Range("H17"))
'Add Summaries
AddSummary
'Save & Close
ActivePresentation.SaveAs Filename:=vNewPrimaryTemplatePath, FileFormat:=ppSaveAsDefault
ActivePresentation.Close
End Sub
Thanks again for any assistance
You don't need Select and you can simplify :
Build.Columns(2).AutoFit
But on a second view, you have misdefined your variables Build and Entry, they should be Worksheet
objects and not Sheets
collections.