Я создал (частично скопировал) макрос, который, в зависимости от выделения на первом листе, добавляет строку на первом и втором листах в одном месте.
Вчера утром все по-прежнему работало нормально, но после некоторого тестирования всех различных функций (в основном автофильтров), он внезапно решил больше не использовать целевую ячейку, а вместо этого целевую.Он даже меняет случайную ячейку из-за неизвестных обстоятельств (вчера она была в первом ряду, затем в 11. и т. Д.).
Я очень плохо знаком с VBA и был бы очень благодарен за помощь в решении этой проблемы.
Вот мой код для добавления строки (удаление работ по тому же принципу):
Sub Add_Row()
Application.ScreenUpdating = False
ActiveSheet.Unprotect
With ActiveWorkbook.ActiveSheet
If .FilterMode Then
.ShowAllData
End If
End With
Sheets("People to Project").Select
ActiveSheet.Unprotect
With ActiveWorkbook.ActiveSheet
If .FilterMode Then
.ShowAllData
End If
End With
r0w = ActiveCell.Row
c0l = ActiveCell.Column
ThisWorkbook.Sheets("Overview").Cells(r0w, c0l).EntireRow.Insert
ThisWorkbook.Sheets("People to Project").Cells(r0w, c0l).EntireRow.Insert
Sheets("Overview").Select
Range(Cells(r0w, 17), Cells(r0w, 48)).Select
Selection.Style = "1. Projectfield"
Sheets("People to Project").Select
ActiveSheet.Unprotect
Range(Cells(r0w, 12), Cells(r0w, 43)).Select
Selection.Style = "1. Projectfield"
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFiltering:=True
Sheets("Overview").Select
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFiltering:=True
Application.ScreenUpdating = True
End Sub