Přejít k hlavnímu obsahu

Jak kopírovat řádky a vložit na jiný list na základě data v aplikaci Excel? 

Předpokládejme, že mám řadu dat, teď chci zkopírovat celé řádky na základě konkrétního data a poté je vložit do jiného listu. Máte nějaké dobré nápady, jak se touto prací zabývat v Excelu?

Zkopírujte řádky a vložte je do jiného listu na základě dnešního data

Zkopírujte řádky a vložte je na jiný list, pokud je datum větší než dnes


Zkopírujte řádky a vložte je do jiného listu na základě dnešního data

Pokud potřebujete zkopírovat řádky, pokud je dnes datum, použijte následující kód VBA:

1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující kód do okna modulu.

Kód VBA: Zkopírujte a vložte řádky na základě dnešního data:

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. Po vložení výše uvedeného kódu stiskněte F5 klíč ke spuštění tohoto kódu a zobrazí se výzva, která vám připomene výběr sloupce data, na který chcete kopírovat řádky, viz screenshot:

4. Pak klikněte na tlačítko OK Tlačítko, v jiném okně výzvy, vyberte buňku na jiném listu, kam chcete výsledek odeslat, viz screenshot:

5. A pak klikněte na tlačítko OK Tlačítko, nyní jsou řádky, jejichž datum je dnes vloženo do nového listu najednou, viz screenshot:


Zkopírujte řádky a vložte je na jiný list, pokud je datum větší než dnes

Chcete-li zkopírovat a vložit řádky, jejichž datum je větší nebo rovno dnešnímu dni, například pokud je datum stejné nebo větší než 5 dní od dnešního dne, zkopírujte a vložte řádky na jiný list.

Následující kód VBA vám může udělat laskavost:

1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující kód do okna modulu.

Kód VBA: Zkopírujte a vložte řádky, pokud je datum větší než dnes:

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

Poznámka: Ve výše uvedeném kódu můžete změnit kritéria, například méně než dnes nebo počet dní podle potřeby v If TypeName (xVal) = "Date" And (xVal <> "") And (xVal> = Date And (xVal <Date + 5)) Then kód skriptu.

3. Pak stiskněte tlačítko F5 klíč ke spuštění tohoto kódu, v poli výzvy vyberte datový sloupec, který chcete použít, viz screenshot:

4. Pak klikněte na tlačítko OK Tlačítko, v jiném okně výzvy, vyberte buňku na jiném listu, kam chcete výsledek odeslat, viz screenshot:

5, Klepněte na tlačítko OK Tlačítko, nyní, řádky, jejichž datum je stejné nebo větší než 5 dní od dnešního dne, byly zkopírovány a vloženy do nového listu jako následující obrázek obrazovky:

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  Vyvolejte funkce Kutools...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...

Popis


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Is it possible to do this for an entire workbook if the date is always in the same column on each? If so, what would the VBA code be, or which bit would I change?
This comment was minimized by the moderator on the site
Did you get a reply on this?
This comment was minimized by the moderator on the site
Same here. Would really like an answer!
THANKS ALOT ALREADY EXTENDOFFICe :D
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations