Hogyan lehet másolni a sorokat és beilleszteni egy másik lapba dátum alapján az Excel-ben?
Tegyük fel, hogy van egy adattartományom, most a teljes sorokat szeretném átmásolni egy adott dátum alapján, majd beilleszteni egy másik lapba. Van valami jó ötlete ezzel a feladattal az Excelben?
Másolja a sorokat, és illessze be egy másik lapra a mai dátum alapján
Másolja a sorokat, és illessze be egy másik lapra, ha a dátum nagyobb, mint a mai
Másolja a sorokat, és illessze be egy másik lapra a mai dátum alapján
Ha át kell másolnia a sorokat, ha a mai dátum van, kérjük, alkalmazza a következő VBA kódot:
1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablakba.
VBA kód: Sorok másolása és beillesztése a mai dátum alapján:
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. A fenti kód beillesztése után nyomja meg a gombot F5 kulcs a kód futtatásához, és megjelenik egy felszólító mező, amely emlékezteti Önt a dátum oszlop kiválasztására, amely alapján sorokat szeretne másolni, lásd a képernyőképet:
4. Ezután kattintson OK gomb, egy másik prompt mezőben jelöljön ki egy cellát egy másik lapon, ahová ki szeretné adni az eredményt, lásd a képernyőképet:
5. Kattintson a gombra OK gomb, most a mai dátum sorait egyszerre illesztjük be az új lapba, lásd a képernyőképet:
Másolja a sorokat, és illessze be egy másik lapra, ha a dátum nagyobb, mint a mai
Például azoknak a soroknak a másolásához és beillesztéséhez, amelyek dátuma nagyobb vagy egyenlő, mint például a mai, például, ha a dátum megegyezik vagy meghaladja a mai naptól számított 5 napot, másolja és illessze be a sorokat egy másik lapra.
A következő VBA-kód kedvezhet neked:
1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.
2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablakba.
VBA kód: Másolja és illessze be a sorokat, ha a dátum nagyobb, mint a mai:
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
Megjegyzések: A fenti kódban megváltoztathatja a kritériumokat, például kevesebbet, mint ma, vagy a szükséges napok számát Ha TypeName (xVal) = "Dátum" És (xVal <> "") És (xVal> = Dátum És (xVal <Dátum + 5)), akkor szkript kód.
3. Ezután nyomja meg a gombot F5 kulcs a kód futtatásához, a prompt mezőben válassza ki a használni kívánt adatoszlopot, lásd a képernyőképet:
4. Ezután kattintson OK gomb, egy másik prompt mezőben jelöljön ki egy cellát egy másik lapon, ahová ki szeretné adni az eredményt, lásd a képernyőképet:
5. Kattintson az OK gombra, most azokat a sorokat, amelyek dátuma legalább 5 nap, a mai naptól kezdve, átmásoltuk és beillesztettük az új munkalapba a következő képernyőkép szerint:
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!