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:
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
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!