كيفية نسخ الصفوف ولصقها في ورقة أخرى بناءً على التاريخ في Excel؟
لنفترض أن لدي مجموعة من البيانات، وأريد الآن نسخ الصفوف بالكامل بناءً على تاريخ محدد ثم لصقها في ورقة أخرى. هل لديك أي أفكار جيدة للتعامل مع هذه المهمة في Excel؟
نسخ الصفوف ولصقها في ورقة أخرى بناءً على تاريخ اليوم
نسخ الصفوف ولصقها في ورقة أخرى إذا كان التاريخ أكبر من اليوم
نسخ الصفوف ولصقها في ورقة أخرى بناءً على تاريخ اليوم
إذا كنت بحاجة إلى نسخ الصفوف إذا كان التاريخ هو اليوم، يرجى تطبيق الكود التالي بلغة VBA:
1. اضغط باستمرار على مفتاحي ALT + F11 لفتح نافذة Microsoft Visual Basic for Applications.
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. ثم انقر فوق زر موافق، وفي مربع منبثق آخر، حدد خلية في ورقة أخرى حيث تريد إخراج النتيجة، انظر إلى الصورة التوضيحية:
5. وبعد ذلك انقر فوق زر موافق، الآن تم لصق الصفوف التي يكون تاريخها هو اليوم في الورقة الجديدة فورًا، انظر إلى الصورة التوضيحية:
نسخ الصفوف ولصقها في ورقة أخرى إذا كان التاريخ أكبر من اليوم
لنسخ ولصق الصفوف التي يكون تاريخها أكبر من أو يساوي اليوم، على سبيل المثال، إذا كان التاريخ يساوي أو أكبر من 5 أيام منذ اليوم، ثم نسخ ولصق الصفوف في ورقة أخرى.
قد يساعدك الكود التالي بلغة VBA:
1. اضغط باستمرار على مفتاحي ALT + F11 لفتح نافذة Microsoft Visual Basic for Applications.
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
ملاحظة: في الكود أعلاه، يمكنك تغيير المعايير، مثل أقل من اليوم أو عدد الأيام كما تحتاج في سطر الكود If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then.
3. ثم اضغط على مفتاح F5 لتشغيل هذا الكود، في مربع الحوار، يرجى تحديد عمود البيانات الذي تريد استخدامه، انظر إلى الصورة التوضيحية:
4. ثم انقر فوق زر موافق، وفي مربع منبثق آخر، حدد خلية في ورقة أخرى حيث تريد إخراج النتيجة، انظر إلى الصورة التوضيحية:
5. انقر فوق زر موافق، الآن تم نسخ ولصق الصفوف التي يكون تاريخها يساوي أو أكبر من 5 أيام منذ اليوم في الورقة الجديدة كما هو موضح في الصورة التالية:
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في Excel مع Kutools لـ Excel، واختبر الكفاءة كما لم يحدث من قبل. Kutools لـ Excel يقدم أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير
- تمكين تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint.
- افتح وأنشئ عدة مستندات في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ منفصلة.
- يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات بالماوس يومياً!