Следующий код отлично работает в Excel 2013. Наш ИТ-специалист установил для нас новый компьютер с Excel 2016. Теперь при открытии файла я получаю сообщение об ошибке «Ошибка во время выполнения« 1004 »: невозможно установить свойство CenterHeader дляPageSetup class "
Когда я пытался записать макрос, чтобы увидеть, что Excel 2016 делает что-то по-другому, код выглядел так же, как здесь, и снова этот код по-прежнему работает нормально в 2013 году.
Private Sub Workbook_Open()
Dim Obj As Object
AWb = Application.ActiveWorkbook.Name
If AWb = "UCSB Service Form.xlsm" Then
Application.ScreenUpdating = False
Sheets("Form").Activate
DateFormat = Format(Date, "mm/dd/yy;@")
Range("F2") = DateFormat
Range("F36") = DateFormat
Cells.Validation.Delete
'Sets record number
Record = "Pending"
Range("H6") = "'" & Record
ActiveSheet.PageSetup.CenterHeader = "Record: " & Record
'<<< Debug indicates this line
'Run-time error '1004': Unable to set the CenterHeaderproperty of the PageSetup class
'Open blank form
Range("F3:F7").ClearContents
Range("E9:F10").ClearContents
Range("E12:F18").ClearContents
Range("E20:F23").ClearContents
Range("E26:F29").ClearContents
Range("K2:K5").ClearContents
Range("H4:I6").ClearContents
Range("G9:J25").ClearContents
Range("I27:I31").ClearContents
Range("K27:K31").ClearContents
Range("K27:K31").ClearContents
Range("G34:I39").ClearContents
Range("I40").ClearContents
Range("K40").ClearContents
Range("K33:K36").ClearContents
'Clear Highlighting
Range("F3:F7").Interior.Color = xlNone
Range("E9:F9").Interior.Color = xlNone
Range("E12:F13").Interior.Color = xlNone
Range("E14:F17").Interior.Color = xlNone
Range("E18:F18").Interior.Color = xlNone
Range("E20:F23").Interior.Color = xlNone
Range("H4:I4").Interior.Color = xlNone
Application.ScreenUpdating = True
Range("A1").Select
Range("F3").Select
Application.ScreenUpdating = False
Range("H6") = "'" & Record
Set Obj = ActiveSheet.CommandButton1
Obj.Caption = "Save"
Call M_Lists.S_Lists
End If
'Updated 4/25/18
End Sub