Como copiar linhas e colar em outra planilha com base na data no Excel?
Suponha que eu tenha um intervalo de dados, agora quero copiar as linhas inteiras com base em uma data específica e depois colá-las em outra planilha. Você tem alguma boa ideia para lidar com esse trabalho no Excel?
Copie as linhas e cole em outra planilha com base na data de hoje
Copie as linhas e cole em outra página se a data for posterior a hoje
Copie as linhas e cole em outra planilha com base na data de hoje
Se você precisar copiar as linhas se a data for hoje, aplique o seguinte código VBA:
1. Segure o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
2. Clique inserção > Móduloe cole o código a seguir na janela do módulo.
Código VBA: copie e cole linhas com base na data de hoje:
Sub CopyRow()
'Updateby Extendoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal = Date) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
3. Depois de colar o código acima, pressione F5 para executar este código e uma caixa de prompt aparecerá para lembrá-lo de selecionar a coluna de data na qual deseja copiar as linhas, consulte a captura de tela:
4. Então clique OK botão, em outra caixa de prompt, selecione uma célula em outra planilha onde você deseja produzir o resultado, veja a captura de tela:
5. E, em seguida, clique em OK botão, agora, as linhas cuja data é hoje são coladas na nova planilha de uma vez, veja a captura de tela:
Copie as linhas e cole em outra página se a data for posterior a hoje
Para copiar e colar as linhas cuja data seja maior ou igual a hoje, por exemplo, se a data for igual ou maior que 5 dias desde hoje, copie e cole as linhas em outra planilha.
O seguinte código VBA pode lhe fazer um favor:
1. Segure o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
2. Clique inserção > Móduloe cole o código a seguir na janela do módulo.
Código VBA: copie e cole linhas se a data for posterior a hoje:
Sub CopyRow()
'Updateby Extentoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
Note: No código acima, você pode alterar os critérios, como menos do que hoje ou o número de dias que você precisa no If TypeName (xVal) = "Date" And (xVal <> "") And (xVal> = Date And (xVal <Date + 5)) Then código do script.
3. Então aperte F5 chave para executar este código, na caixa de prompt, selecione a coluna de dados que deseja usar, consulte a captura de tela:
4. Então clique OK botão, em outra caixa de prompt, selecione uma célula em outra planilha onde você deseja produzir o resultado, veja a captura de tela:
5. Clique no OK botão, agora, as linhas cuja data é igual ou superior a 5 dias desde hoje foram copiadas e coladas na nova planilha conforme a seguinte captura de tela mostrada:
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!