كيفية مقارنة التواريخ في vba (مع أمثلة)


يمكنك استخدام بناء الجملة الأساسي التالي في VBA لمقارنة تاريخين:

 SubCompareDates ()
    Dim i As Integer

    For i = 2 To 5
        If CDate(Range(" A " & i)) < CDate(Range(" B " & i)) Then
            Result = " First Date is Earlier "
    Else
        If CDate(Range(" A " & i)) > CDate(Range(" B " & i)) Then
                Result = “ First Date is LaterElse
                Result = " Dates Are Equal "
            End If
        End If
        
    Range(" C " & i) = Result
    
    Next i
End Sub

سيقوم هذا المثال تحديدًا بمقارنة التواريخ في الخلايا المقابلة في النطاقين A2:A5 و B2:B5 وإرجاع نتيجة مقارنات التواريخ في النطاق C2:C5 .

ملاحظة : تقوم الدالة CDate بتحويل قيمة خلية معينة إلى تاريخ.

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: مقارنة التواريخ في VBA

لنفترض أن لدينا العمودين التاليين مع التواريخ في Excel:

لنفترض أننا نريد مقارنة التواريخ في كل صف مطابق وعرض نتائج مقارنة التواريخ في العمود C.

يمكننا إنشاء الماكرو التالي للقيام بذلك:

 SubCompareDates ()
    Dim i As Integer

    For i = 2 To 5
        If CDate(Range(" A " & i)) < CDate(Range(" B " & i)) Then
            Result = " First Date is Earlier "
    Else
        If CDate(Range(" A " & i)) > CDate(Range(" B " & i)) Then
                Result = “ First Date is LaterElse
                Result = " Dates Are Equal "
            End If
        End If
        
    Range(" C " & i) = Result
    
    Next i
End Sub

عندما نقوم بتشغيل هذا الماكرو، نحصل على الإخراج التالي:

يتم الآن عرض نتائج مقارنات التاريخ في العمود C.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في VBA:

فبا: كيفية فرز ورقة حسب أعمدة متعددة
فبا: كيفية حساب عدد الصفوف في النطاق
فبا: كيفية تصفية عمود

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *