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

Hur kopierar jag rader och klistrar in på ett annat ark baserat på datum i Excel? 

Antag att jag har en rad data, nu vill jag kopiera hela raderna baserat på ett visst datum och sedan klistra in dem i ett annat ark. Har du några bra idéer för att hantera det här jobbet i Excel?

Kopiera rader och klistra in på ett annat ark baserat på dagens datum

Kopiera rader och klistra in på ett annat ark om datumet är större än idag


Kopiera rader och klistra in på ett annat ark baserat på dagens datum

Om du behöver kopiera raderna om datumet är idag, använd följande VBA-kod:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i modulfönstret.

VBA-kod: Kopiera och klistra in rader baserat på dagens datum:

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. När du har klistrat in ovanstående kod, tryck på F5 nyckel för att köra den här koden, och en snabbruta dyker upp för att påminna dig om att välja den datumkolumn som du vill kopiera rader baserat på, se skärmdump:

4. Klicka sedan OK -knappen, i en annan rutan, välj en cell i ett annat ark där du vill mata ut resultatet, se skärmdump:

5. Och klicka sedan på OK knapp, nu, raderna som datum är idag klistras in i det nya arket på en gång, se skärmdump:


Kopiera rader och klistra in på ett annat ark om datumet är större än idag

För att kopiera och klistra in raderna med ett datum som är större än eller lika med idag, till exempel om datumet är lika med eller större än fem dagar sedan idag, kopiera och klistra sedan in raderna till ett annat ark.

Följande VBA-kod kan göra dig en tjänst:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i modulfönstret.

VBA-kod: Kopiera och klistra in rader om datumet är större än idag:

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

Anmärkningar: I koden ovan kan du ändra kriterierna, till exempel mindre än idag eller antalet dagar som du behöver i Om TypeName (xVal) = "Date" And (xVal <> "") And (xVal> = Date And (xVal <Date + 5)) Then skriptkod.

3. Tryck sedan på F5 nyckel för att köra den här koden, i snabbrutan, välj den datakolumn som du vill använda, se skärmdump:

4. Klicka sedan OK -knappen, i en annan rutan, välj en cell i ett annat ark där du vill mata ut resultatet, se skärmdump:

5. Klicka på OK knappen, nu har raderna som datumet är lika med eller större än 5 dagar sedan idag kopierats och klistrats in i det nya arket enligt följande skärmdump:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (3)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Är det möjligt att göra detta för en hel arbetsbok om datumet alltid står i samma kolumn på varje? Om så är fallet, vad skulle VBA-koden vara, eller vilken bit skulle jag ändra?
Denna kommentar minimerades av moderatoren på webbplatsen
Fick du svar på detta?
Denna kommentar minimerades av moderatoren på webbplatsen
Samma här. Skulle verkligen vilja ha svar!
REDAN TACK MYCKET EXTENDOFFICe :D
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL