إجمالي مرات مشاهدة الصفحة

السبت، 7 مايو 2016

إدراج التاريخ أتوماتيكياً بمجرد إدخال بيان Insert Date Automatically Worksheet Change

السلام عليكم ورحمة الله وبركاته

أقدم لكم كود يوضع في حدث ورقة العمل ويقوم الكود بإدراج التاريخ بشكل تلقائي.


بفرض أن لديك النطاق A2:A20 ، والمطلوب أنه عند أي إدخال جديد في النطاق يتم إدراج التاريخ في الخلية المقابلة لها في العمود الثالث ، وهذا ما يقوم به الكود ، والكود فيه مرونة في التعامل ، أي أنه يمكن التعامل مع خلية واحدة فقط أو مجموعة خلايا ، ويتم مسح التاريخ بمجرد مسح الخلية أو الخلايا ، كما أنه يتأثر بعملية النسخ ، أي إذا قمت بنسخ خلية أو أكثر من أي مكان ووضعها في العمود الأول ، يتم إدراج التاريخ في العمود الثالث.

وأخيراً إليكم الكود ، ويوضع الكود في حدث ورقة العمل

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("A2:A20")) Is Nothing Then
        VBA.Calendar = vbCalGreg

        If Len(Target.Cells(1).Value2) <> 0 Then
            Cells(Target.Row, 3).Resize(Target.Rows.Count).Value = Date
        Else
            Cells(Target.Row, 3).Resize(Target.Rows.Count).Value = vbNullString
        End If
    End If
End Sub

إعداد / ياسر خليل أبو البراء

هناك 10 تعليقات:

  1. بارك الله تعالى بكم ونفع بعلمكم..

    ردحذف
  2. وبارك الله فيك أخي الغالي أبو يوسف

    ردحذف
  3. بارك الله فيك على هذة المعلومات القيمة

    ردحذف
  4. معلش بعد اذنك احط الكود فين بالظبط؟

    ردحذف
  5. بارك الله فيك العزيز ياسر " ابو البراء "

    ردحذف
  6. هل بمكاني تسجيل الوقت الغعلي لخلية معينة بمجرد الكتابة في خلي اخر دون اعمدة افدنا الله يجزاك خير

    ردحذف
  7. لو محتاج تكرار العمليه فى نفس الصفحه
    يعنى لما اكتب فى عمود a يظهر التاريخ فى f واكتب فى b يظهر فى g واكتب فى c يظهر فى h
    اعملها ازاى من فضلك بس التاريخ ميتحدثش
    وشكرا مقدما

    ردحذف
  8. شكرا الله يجزاك خير

    ردحذف
  9. ممكن لو سمحت التاريخ يظهر اسفل الاسم اى فى نفس العامود

    ردحذف