اذهب الي المحتوي
أوفيسنا

معرفة تاريخ ووقت الإدخال


NAWAS

الردود الموصى بها

السلام عليكم

لدينا عدة أوراق إكسيل وندخل عليها بيانات بإستمرار

وأحياناً تتغير البيانات المدخلة

فحاولت أن أستخدم الدالة التالية لمعرفة آخر تغيير على الخلية أو الخلايا

IF(isblank(A1),””,Now())

ونجحت بأن أعطتني الوقت والتاريخ فعلاُ عند حدوث التعديل أو الإدخال

ولكن المشكلة هي أن العمود الذي يحتوي على المعادلة يتغير فيه الوقت كلما تمت عملية إدخال

أو تعديل جديدة أي أن الوقت يتحدث بإستمرار

فكيف أستطيع أن أجعل وقت التغيير أو الإدخال كلاً على حده ولا يتحدث إلا عند حصول تغيير آخر

وليس بضغط F9 أو عند إعادة فتح الملف مرة أخرى أو كلما أجرينا تعديل

ولكم جزيل الشكر

رابط هذا التعليق
شارك

السلام عليكم

الحمد لله لقد توصلت إلى الحل وهو كالآتي

نعرف دالة جديدة عن طريق الـ VB

والكود كالآتي

Function ash(ash1 As String)
If Application.WorksheetFunction.IsText(ash1) Then
ash = Date & Time
End If
Application.ScreenUpdating = False
End Function

ومن داخل الإكسيل نستدعي الدالة وتحديد الخلية التي نريد أن نعرف متى تعدلت

وعند تطبيق المعادلة سيعطينا وقت إدخال هذه المعادلة وسيتغير هذا الوقت فقط في

حال التعديل أو الإلغاء

وشكراً

  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

عندما نريد أن نكون معادلة في الـ VBA ومن ثم نستدعيها فعلينا أن نستخدم

Function  () 
ما تريد أن تعرفه
End Function
وذلك لكي يحتفظ الكود الذي كتبته بالقيمة المطلوبة التي تريد أن تصل إليها ولا نستخدم SUB لأنها تقوم بإجراء ماتريده ومن ثم ينتهي تأثيرها ولا تتنفذ مرة أخرى إلا إذا إستدعيتها من قائمة الماكرو أو عملت لها زر وربطتها بالماكرو ولكن Function تحتفظ بما تم تعريفة وبعد ذلك ستجد ما عرفته موجود في دوال الإكسل Function Paste وما قمت بتعريفه هو أنه في حال احتواء الخلية على أي نص والذي تم تعريفه مسبقاً
ash1 As String
فإنه سيتم استدعاء الدالة ash والتي تعطينا الوقت والتاريخ وذلك حسب التعريف
ash = Date & Time
إلى هنا ستعطينا الدالة نفس التأثير للمعادلة Now() فلهذا أضفت السطر
application.screenupdating = false

وذلك لكي يقوم بتعطيل خاصية التحديث التلقائي كلما حدث أي تغيير في البيانات

آمل أن أكون قد حققت مطلبك يا سيد أنور

والسلام

  • Like 1
رابط هذا التعليق
شارك

شكرا لك اخي نواس

وشكرا علي الشرح ويبدو انك مسمرة في التعامل مع الاكواد

السؤال هنا كيف استطيع استدعاء الدالة من داخل الاكسيل

بمعني اخر اين اجد هذة الدالة بحث عنها في ادراج دالة ولم اجدها وذلك بعد ان عملت نسخ ولصق للكود السابق

رابط هذا التعليق
شارك

  • 2 weeks later...
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information