Em vez de copiar a linha inteira, você pode copiar de Range("X" & Target.Row)
e Range("Y" & Lastrow)
(onde X e Y e as colunas de origem e destino, respectivamente)
Eu tenho uma pasta de trabalho com um grande número de folhas projetadas para ajudar minha equipe a gerenciar sua carga de trabalho com mais eficiência.
Quando alguém solicita que um trabalho seja feito, uma linha é adicionada a uma planilha chamada 'autorização pendente'
A equipe tem uma caixa suspensa em cada linha / registro na coluna 'N' que é adicionada e pode aceitar ou recusar o trabalho.
Se a equipe aceitar o trabalho, ele será movido para outra planilha chamada trabalho pendente e excluirá o registro da folha de autorização pendente. O código que faz isso está abaixo:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("N:N")) Is Nothing Then
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
Dim Lastrow As Long
Lastrow = Sheets("Status Check").Cells(Rows.Count, "N").End(xlUp).Row + 1
If Target.Value = "Accepted" Then
Rows(Target.Row).Copy Destination:=Sheets("Pending Work").Rows(Lastrow)
Rows(Target.Row).Delete
End If
End If
End Sub
Embora isso funcione muito bem, na verdade, quero apenas que certas células dessa linha sejam copiadas para a outra planilha em vez da linha inteira. Existe alguma maneira fácil de selecionar apenas certas células de cada linha para serem copiadas?