Этот код работал отлично. Тогда это просто перестало работать. Если я удаляю строку, она работает один раз, а затем снова завершается с ошибкой после этой точки:
Ошибка 1004 возникает в этой строке ниже в коде, когда достигается «порог» независимо от того, что его вызывает:
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Вот макрос Excel VBA:
Sub InsertNewRow()
'
' InsertNewRow Macro
' Inserts a new row at row 2 and adds the date/time and user name.
'
' Keyboard Shortcut: Ctrl+Shift+N
'
ActiveSheet.Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveSheet.Range("H2").Select
ActiveCell.FormulaR1C1 = Now()
ActiveSheet.Range("J2").Select
ActiveCell.FormulaR1C1 = UCase(Application.UserName & "")
ActiveSheet.Range("A2").Select
End Sub
Есть идеи о том, ПОЧЕМУ это происходит и как его можно навсегда предотвратить?
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:
Данные приведены в таблице на листе. Если я просто выберу строку и затем попытаюсь вставить строку вручную, опция INSERT будет выделена серым цветом.
Если я выбираю строку таблицы целиком, а затем пытаюсь вставить строку таблицы, опция добавления строк в таблицу также становится серой. вне. Кажется, это ограничение таблиц в формате Excel. Я не уверен, почему он не может обрабатывать ниже 6000 строк. Кажется глючит.
Я попробовал это, чтобы увидеть, если это был предел самой таблицы:
... Получила эту ошибку: