Como mover uma linha inteira para outra planilha com base no valor da célula no Excel?
Para mover uma linha inteira para outra planilha com base no valor da célula, este artigo irá ajudá-lo.
Mover uma linha inteira para outra planilha com base no valor da célula com código VBA
Mover uma linha inteira para outra planilha com base no valor da célula com Kutools para Excel
Mover uma linha inteira para outra planilha com base no valor da célula com código VBA
Como mostrado na captura de tela abaixo, você precisa mover a linha inteira da Planilha1 para a Planilha2 se uma palavra específica “Concluído” existir na coluna C. Você pode tentar o seguinte código VBA.
1. Pressione simultaneamente as teclas Alt + F11 para abrir a janela Microsoft Visual Basic for Applications.
2. Na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo. Em seguida, copie e cole o código VBA abaixo na janela.
Código VBA 1: Mover uma linha inteira para outra planilha com base no valor da célula
Sub Cheezy()
'Updated by Kutools for Excel 2017/8/28
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
xRg(K).EntireRow.Delete
If CStr(xRg(K).Value) = "Done" Then
K = K - 1
End If
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
Observação: No código, Planilha1 é a planilha que contém a linha que você deseja mover. E Planilha2 é a planilha de destino onde você localizará a linha. “C:C” é a coluna que contém um determinado valor, e a palavra “Concluído” é o valor específico com base no qual você moverá a linha. Altere-os conforme suas necessidades.
3. Pressione a tecla F5 para executar o código, então a linha que atender aos critérios na Planilha1 será movida para a Planilha2 imediatamente.
Observação: O código VBA acima excluirá as linhas dos dados originais após movê-las para uma planilha especificada. Se você quiser apenas copiar as linhas com base no valor da célula, em vez de excluí-las, aplique o código VBA 2 abaixo.
Código VBA 2: Copiar uma linha inteira para outra planilha com base no valor da célula
Sub MoveRowBasedOnCellValue()
'Updated by Extendoffice 2017/11/10
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
Mover uma linha inteira para outra planilha com base no valor da célula com Kutools para Excel
Se você é novo no código VBA, aqui apresento a ferramenta Selecionar Células Específicas do Kutools para Excel. Com esta ferramenta, você pode facilmente selecionar todas as linhas com base em um determinado valor de célula ou diferentes valores de células em uma planilha e copiar as linhas selecionadas para a planilha de destino conforme necessário. Por favor, faça o seguinte.
1. Selecione a lista de colunas que contém o valor da célula com base no qual você moverá as linhas, depois clique em Kutools > Selecionar > Selecionar Células Específicas. Veja a captura de tela:
2. Na caixa de diálogo Selecionar Células Específicas que aparece, escolha Linha Inteira na seção Tipo de Seleção, selecione Igual a na lista suspensa Tipo Específico, insira o valor da célula na caixa de texto e clique no botão OK.
Outra caixa de diálogo Selecionar Células Específicas aparece para mostrar o número de linhas selecionadas, e ao mesmo tempo, todas as linhas que contêm o valor especificado na coluna selecionada foram selecionadas. Veja a captura de tela:
3. Pressione as teclas Ctrl + C para copiar as linhas selecionadas e depois cole-as na planilha de destino que você precisa.
Observação: Se você deseja mover linhas para outra planilha com base em dois valores de células diferentes. Por exemplo, mover linhas com base nos valores das células “Concluído” ou “Processando”, você pode habilitar a condição Ou na caixa de diálogo Selecionar Células Específicas como mostrado na captura de tela abaixo:
Se você deseja experimentar este utilitário gratuitamente (30 dias), clique para baixá-lo e, em seguida, vá aplicar a operação de acordo com as etapas acima.
Artigos relacionados:
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!