Note: The other languages of the website are Google-translated. Back to English

Come copiare righe e incollare su un altro foglio in base alla data in Excel? 

Supponendo, ho un intervallo di dati, ora, voglio copiare le intere righe in base a una data specifica e quindi incollarle in un altro foglio. Hai qualche buona idea per affrontare questo lavoro in Excel?

Copia le righe e incolla su un altro foglio in base alla data odierna

Copia le righe e incolla su un altro foglio se la data è maggiore di quella odierna


Copia le righe e incolla su un altro foglio in base alla data odierna

Se è necessario copiare le righe se la data è oggi, applicare il seguente codice VBA:

1. Tieni premuto il ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Clic inserire > Moduloe incolla il codice seguente nella finestra del modulo.

Codice VBA: copia e incolla le righe in base alla data odierna:

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. Dopo aver incollato il codice sopra, premere F5 chiave per eseguire questo codice e verrà visualizzata una finestra di messaggio per ricordarti di selezionare la colonna della data su cui desideri copiare le righe, vedi screenshot:

4. Quindi fare clic OK pulsante, in un'altra finestra di messaggio, seleziona una cella in un altro foglio in cui desideri visualizzare il risultato, vedi screenshot:

5. E poi clicca OK pulsante, ora, le righe la cui data è oggi vengono incollate nel nuovo foglio contemporaneamente, vedi screenshot:


Copia le righe e incolla su un altro foglio se la data è maggiore di quella odierna

Per copiare e incollare le righe la cui data è maggiore o uguale a oggi, ad esempio, se la data è uguale o maggiore di 5 giorni da oggi, quindi copia e incolla le righe su un altro foglio.

Il seguente codice VBA potrebbe farti un favore:

1. Tieni premuto il ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Clic inserire > Moduloe incolla il codice seguente nella finestra del modulo.

Codice VBA: copia e incolla le righe se la data è maggiore di oggi:

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:: Nel codice sopra, puoi cambiare i criteri, come meno di oggi o il numero di giorni di cui hai bisogno nel file If TypeName (xVal) = "Date" And (xVal <> "") And (xVal> = Date And (xVal <Date + 5)) Allora codice di script.

3. Quindi premere F5 chiave per eseguire questo codice, nella casella del messaggio, selezionare la colonna di dati che si desidera utilizzare, vedere screenshot:

4. Quindi fare clic OK pulsante, in un'altra finestra di messaggio, seleziona una cella in un altro foglio in cui desideri visualizzare il risultato, vedi screenshot:

5. Clicca il OK pulsante, ora, le righe la cui data è uguale o maggiore di 5 giorni da oggi sono state copiate e incollate nel nuovo foglio come mostrato nella seguente schermata:


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (3)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
È possibile farlo per un'intera cartella di lavoro se la data è sempre nella stessa colonna su ciascuna? In tal caso, quale sarebbe il codice VBA o quale bit cambierei?
Questo commento è stato fatto dal moderatore sul sito
Hai ricevuto una risposta in merito?
Questo commento è stato fatto dal moderatore sul sito
Lo stesso qui. Vorrei davvero una risposta!
GRAZIE GIÀ EXTENDOFFICe :D
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL