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

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

قام بنشر

إخوتي الكرام

كل عام وأنتم بألف خير

لدي طلب مساعدة وكلي أمل أن أجد الحل لدى هذا المنتدى الأكثر من رائع..

الملف المرفق به كود يقوم بتجميع القيم المدخلة في الخلية (A10) مهما تعددت وتغيرت، في خلية واحدة هي (A11)..

المشكلة أن الخلية (A10) عبارة عن صيغة، ولا يستجيب الكود للقيمة المدخلة فيها إلا بالضغط عليها ثم (ENTER).

هل هناك طريقة ليعمل الكود تلقائيا بمجرد تغير القيمة في (A10)، بدون تدخل يدوي؟

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

تفعيل الكود بدون تدخل يدوي.rar

قام بنشر (معدل)

الكود الصحيح لهذه العملية

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

If Target.Address = "$A$10" And IsNumeric(Value) Then
    Application.EnableEvents = False
    Range("A11").Value = Range("A11") + Target.Value
    Application.EnableEvents = True
End If

End Sub

 

تم تعديل بواسطه سليم حاصبيا
قام بنشر

ربما هذا الكود (أوقف الأول عن العمل و ذلك بوضع فاصلة عليا في بدايته)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$10" And IsNumeric(Value) And Target.Count = 1 Then
  Old_Val = Target.Value
  Cells(11, 1).Value = Cells(11, 1).Value + Old_Val
  End If
End Sub

 

قام بنشر
2 دقائق مضت, ربيع الأول said:

أصبحت الخلية (A11) تحدث إذا مررت عليها بمؤشر الأسهم في لوحة المفاتيح.

أريدها أن تحدث بمجرد تغير القيمة في (A10). وأشكر لك أخي سليم جهدك وصبرك

 

مجرد المرور عليها بالمؤشر فانت تحدد الخلية (كأنك ضغطت عليها بالماوس)

قام بنشر

أخي الكريم ربيع الأول

أعتقد أن الكود الأول الذي قدمه أخي سليم يفي بالغرض وهذا ما أفهمه من كلامك

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

If Target.Address = "$A$10" And IsNumeric(Value) Then
    Application.EnableEvents = False
    Range("A11").Value = Range("A11") + Target.Value
    Application.EnableEvents = True
End If

End Sub

إذ أنه يحدث تغيير في الخلية A11 بمجرد إدخال قيمة في الخلية A10 ..

قم بإدراج الكود وأدخل قيمة في الخلية A10 ثم اضغط إنتر لتفعيل الحدث ..

ولا يمكن تنفيذ الحدث أثناء كتابة القيمة ، بل لابد من إنتر بعد الإدخال

 

قام بنشر

جزاك الله خيرا أخي أبا البراء

ولكن للأسف في الملف الذي أعمل عليه (وهو عبارة عن تقرير يومي) لا أعتقد أنه يمكنني تطبيق هذا الحل.

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

أرجو أن يكون مقصدي واضحا، وشكر الله جهودكم وصبركم 

قام بنشر

قمت بتطبيق الحل الذي قدمه الأخ سليم ووجدته سهلا وجميلا، فقط يحتاج إلى حذر من تكرار مرور المؤشر حتى لا تتضاعف القيمة بالخطأ.

شكر الله لكم أخوي الكريمين ياسر وسليم، وجزاكم الله خيرا وجميع أعضاء المنتدى الكرام على خدماتكم الجليلة..

لدي سؤال إن أذنتم لأخيكم:

هناك إحدى ورقات العمل تتطلب أكثر من 400 كود مكررة على خلايا متعددة، ولاحظت أن البرنامج يعطيني رسالة مفادها أن الكود طويل، هل لها من حل؟

  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information