Πώς να αντιγράψετε σειρές και να επικολλήσετε σε άλλο φύλλο με βάση την ημερομηνία στο Excel;
Ας υποθέσουμε, έχω μια σειρά δεδομένων, τώρα, θέλω να αντιγράψω ολόκληρες τις σειρές με βάση μια συγκεκριμένη ημερομηνία και έπειτα να τις επικολλήσω σε ένα άλλο φύλλο. Έχετε καλές ιδέες για να αντιμετωπίσετε αυτήν την εργασία στο Excel;
Αντιγράψτε σειρές και επικολλήστε σε άλλο φύλλο με βάση τη σημερινή ημερομηνία
Αντιγράψτε σειρές και επικολλήστε σε άλλο φύλλο εάν η ημερομηνία είναι μεγαλύτερη από σήμερα
Αντιγράψτε σειρές και επικολλήστε σε άλλο φύλλο με βάση τη σημερινή ημερομηνία
Εάν πρέπει να αντιγράψετε τις σειρές εάν η ημερομηνία είναι σήμερα, εφαρμόστε τον ακόλουθο κωδικό VBA:
1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.
2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο παράθυρο της ενότητας.
Κωδικός VBA: Αντιγραφή και επικόλληση σειρών με βάση τη σημερινή ημερομηνία:
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. Αφού επικολλήσετε τον παραπάνω κωδικό, πατήστε F5 για να εκτελέσετε αυτόν τον κώδικα και θα εμφανιστεί ένα πλαίσιο προτροπής για να σας υπενθυμίσει ότι επιλέγετε τη στήλη ημερομηνίας στην οποία θέλετε να αντιγράψετε σειρές βάσει, δείτε το στιγμιότυπο οθόνης:
4. Στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, σε άλλο πλαίσιο προτροπής, επιλέξτε ένα κελί σε άλλο φύλλο όπου θέλετε να εξάγετε το αποτέλεσμα, δείτε το στιγμιότυπο οθόνης:
5. Και στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, τώρα, οι σειρές με ημερομηνία είναι επικολλημένες στο νέο φύλλο ταυτόχρονα, δείτε το στιγμιότυπο οθόνης:
Αντιγράψτε σειρές και επικολλήστε σε άλλο φύλλο εάν η ημερομηνία είναι μεγαλύτερη από σήμερα
Για να αντιγράψετε και να επικολλήσετε τις σειρές που η ημερομηνία είναι μεγαλύτερη ή ίση με σήμερα, για παράδειγμα, εάν η ημερομηνία είναι ίση ή μεγαλύτερη από 5 ημέρες από σήμερα, τότε αντιγράψτε και επικολλήστε τις σειρές σε άλλο φύλλο.
Ο ακόλουθος κωδικός VBA μπορεί να σας βοηθήσει:
1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.
2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο παράθυρο της ενότητας.
Κωδικός VBA: Αντιγράψτε και επικολλήστε σειρές εάν η ημερομηνία είναι μεγαλύτερη από σήμερα:
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: Στον παραπάνω κώδικα, μπορείτε να αλλάξετε τα κριτήρια, όπως λιγότερα από σήμερα ή τον αριθμό των ημερών που χρειάζεστε στο Εάν TypeName (xVal) = "Ημερομηνία" Και (xVal <> "") Και (xVal> = Ημερομηνία και (xVal <Ημερομηνία + 5)) κωδικός σεναρίου.
3. Στη συνέχεια πατήστε F5 για να εκτελέσετε αυτόν τον κωδικό, στο πλαίσιο προτροπής, επιλέξτε τη στήλη δεδομένων που θέλετε να χρησιμοποιήσετε, δείτε το στιγμιότυπο οθόνης:
4. Στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, σε άλλο πλαίσιο προτροπής, επιλέξτε ένα κελί σε άλλο φύλλο όπου θέλετε να εξάγετε το αποτέλεσμα, δείτε το στιγμιότυπο οθόνης:
5. Κάντε κλικ στο OK κουμπί, τώρα, οι σειρές με ημερομηνία η οποία είναι ίση ή μεγαλύτερη από 5 ημέρες από σήμερα έχουν αντιγραφεί και επικολληθεί στο νέο φύλλο όπως φαίνεται το ακόλουθο στιγμιότυπο οθόνης:
Τα καλύτερα εργαλεία παραγωγικότητας γραφείου
Αυξήστε τις δεξιότητές σας στο Excel με Kutools for Excel, και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Kutools for Excel Προσφέρει πάνω από 300 προηγμένες λειτουργίες για ενίσχυση της παραγωγικότητας και εξοικονόμηση χρόνου. Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...
Office Tab Φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη
- Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
- Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
- Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
