Перемещение некоторых строк с сохранением исходных идентификаторов на обоих листах

Наконец, мне удалось переместить некоторые строки из Sheet1 в Sheet2 (Zeile = Row).

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Zeile As Long
    Set Target = Intersect(Target, Range("J6:J1006"))
    If Target Is Nothing Then Exit Sub
    If Target = "C" Then
        Zeile = Target.Row
        Application.Union(Range(Cells(Zeile, 1), Cells(Zeile, 10)), _
        Range(Cells(Zeile, 13), Cells(Zeile, 16))).Copy _
        Destination:=Sheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
        Target.EntireRow.Delete
    End If
End Sub

Теперь есть еще одна проблема.

В первом столбце Sheet1 идентификаторы для разных проектов рассчитываются по следующей формуле:

=IF(NOT(ISEMPTY(G6)),ROW(A6)-6,"")
=IF(NOT(ISEMPTY(G7)),ROW(G7)-6,"")
=IF(NOT(ISEMPTY(G8)),ROW(G8)-6,"")
...

При перемещении определенной строки с Sheet1 на Sheet2, например. строка 7, имеющая, согласно формуле, идентификационный номер 2, она будет иметь другой идентификатор при перемещении в Sheet2 и прежнюю строку 8 в Sheet1, которая теперь будет строкой 7 в Sheet1, изменит свой идентификатор с 3 на 2.

Я хочу добиться того, чтобы идентификаторы всегда оставались неизменными.

Я знаю, что это можно сделать, записав статические значения в виде идентификационных номеров, но мне это не разрешено. Эти формулы являются обязательными.

Итак: есть ли способ сделать это?


person Qralnaq    schedule 15.11.2016    source источник
comment
Не ссылайтесь на старый пост. Поместите свой код релокации, который работает здесь.   -  person Chrismas007    schedule 15.11.2016
comment
Вклейка на отдельном листе? Если да, скопируйте и вставьте значения   -  person Nathan_Sav    schedule 15.11.2016
comment
@Nathan_Sav Я не знаю, смогли ли вы увидеть изменения, которые я только что внес в ответ на комментарий Christmas007. Вы хотите сказать мне, что нет другого пути, кроме как решить этот вопрос вручную?   -  person Qralnaq    schedule 15.11.2016
comment
просто размышляя ...... вы можете вставить значения в лист2, а затем сделать свою формулу идентификатора как что-то вроде максимального числа идентификаторов в листе 1 ‹ строка + количество в листе 2 ‹ строка   -  person Nathan_Sav    schedule 15.11.2016
comment
Должны ли формулы переходить на лист 2? Просто используйте .PasteSpecial xlValues   -  person Chrismas007    schedule 15.11.2016
comment
Если это сработает: Да, они должны прийти к Sheet2. Я попробую позже.   -  person Qralnaq    schedule 15.11.2016
comment
@Chrismas007 лист1 затем изменится по мере удаления, см. мой предыдущий пост   -  person Nathan_Sav    schedule 15.11.2016