У меня есть документ Excel, который копирует лист шаблона в новый лист при первом запуске. Любые другие листы, которые следуют за этим шаблоном, добавляются к вновь созданному листу.VBA - Ошибка времени выполнения 1004 «Определенная заявка или ошибка с определением объекта»
Я получаю ошибку в названии в данном разделе коды:
If Worksheets("User Configuration").Cells(9, 15).Value = 1 Then
Worksheets("Cable Cards Template").Range("A1:J33").Copy
With Worksheets("Cable Cards")
**.Range(Cells(RangeStartRow, RangeStartColumn), Cells(RangeEndRow, RangeEndColumn)).PasteSpecial xlValues**
.Range(Cells(RangeStartRow, RangeStartColumn), Cells(RangeEndRow, RangeEndColumn)).PasteSpecial xlFormats
End With
Worksheets("Cable Cards Template").Shapes("Picture 1").Copy
Worksheets("Cable Cards").Paste Cells(RangeStartRow, RangeStartColumn)
Call Sheets.FormatCableCardRows
End If
В основном, если If
утверждения верно (клетку = 1), то следует скопированному диапазон на конкретный листе и вставляется в новый лист в диапазоне, заданном с использованием PasteSpecial
для значений и форматирования. После этого «вновь созданный» лист должен иметь изображение, скопированное в верхнюю левую ячейку шаблона, и затем подпрограмма вызывается для форматирования строк нового листа.
Я получаю сообщение об ошибке при первом вызове .Range
после заявления With Worksheets("Cable Cards")
. Я пытался не использовать With
заявление, копирование значения непосредственно вместо пасты-специальное и т.д. Странная вещь, что это будет работать на первом ходу, когда новый лист создан с помощью:
If (RangeStartRow = 1) Then
Worksheets.Add().Name = "Cable Cards" ' Create new sheet with given name only on first cable card
Columns(1).ColumnWidth = 9.43
Columns(6).ColumnWidth = 11
Columns(10).ColumnWidth = 9
Call FormatForA5Printing("Cable Cards", 71)
End If
, но на 2-й ход, он терпит неудачу полностью, с Run Time Error 1004 'Application Defined or Object Defined Error'
. Буду признателен за любую помощь.
красиво пятнистый. +1 – hammus
Вот и все, спасибо за это, никогда бы не заметили это иначе! – user3105671
+1 Замечательно, как часто можно найти ошибки, вытекающие из несоответствующих диапазонов. –