بدووور

جمع قيم الخلية التي تتحدث باستمرار

25 ردود في هذا الموضوع

السلام عليكم ...

كم يسعدني المشاركة في هذا الصرح الكبير ..

أعزائي لدي المشكلة التالية أود ممن يعرف حلها مساعدتي :

لدي جدول اكسل مرتبط بمصدر بيانات خاجي يزوده بقيم رقمية بشكل مباشر ، فالخلية الواحدة في الجدول قد تتغير قيمها في جلسة العمل الواحدة مئات المرات ( القيم المرتبطة بالخلايا هي بيانات صفقات و اسعار الأسهم و كما تعلمون تتغير بصورةمستمرة و سريعة ) ..

المطلوب الذي لم أعثر له على حل بعد :

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

أرجو أن تكون الفكرة واضحة ..

كم أتمنى المساعدة في أقرب فرصة ولكم جزيل الشكر و الدعوات الصالحة ..

ملاحظة لدي معرفة لا بأس بها في اكسل و بشكل محدود فيجوال بيسك ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

بالانتظار ...

مشكورين .. مقدما ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخت الكريمة بدووور

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

بما ان هذا الموضوع لا يخص قسم الاكسيس ولكنه يخص قسم الاكسيل في منتدى مبرمجي الاوفيس على هذا الرابط

http://www.arabteam2000-forum.com/index.php?showforum=52

ووضعتي مشاركتك هناك على هذا الرابط

http://www.arabteam2000-forum.com/index.php?showtopic=78754

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

في هذه الصوره تقومين بالتأكد من الخلايا التي سوف تقومين عمل المجموع لها مثلا نبدأ من الخلية C الى الخلية E التي في اترقيم رقم 5 مثلا ثم نضع لها امر المجموع في اخر خلية نريد اظهار المجموع الكلي وهذا ينطبق على بقية الخلايا التي نريد اظهار المجموع لها كالتالي

=SUM(D5;E5)

21_10_05_02_36_04_1129887364TEST.gif

اذا رغبت في تحديث الخلايا اول بأول وفي اقل من جزء من الثانية فإبمكانك الذهاب الى اشرطة القوائم واختيار ادوات ثم خيارات وستفح لك لوحه اختاري منها حساب وضعي كما تلاحظين في الصوره

21_10_05_02_47_09_1129888029TEST_.jpg

وهذا مثال على ذلك بالاكسيل

Test.rar

اختك

زهره

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أختي العزيزة زهره جزاك الله الف خير على تفاعلك الكريم واستجابتك السريعة .

أشكر لك اهتمامك أختي زهرة و أسأل الله العظيم في هذا الشهر الكريم أن يوفقك في الدنيا والآخرة ..

أختي العزيزة المشكلة التي لدي أعرضها لك باختصار لعلها تكون أكثر وضوحا :

" المشكلة كالتالي : لنفرض أن لدي خليتين الأولى تتغير قيمتها كل عشرين ثانية ( مرتبطة بمصدر بيانات خارجي ) .

إذا ستظهر في هذه الخلية في الدقيقة الواحدة ثلاث قيم على الترتيب و لتكن القيم التالية : ( 2 ، 5،3 ) ..

الآن كيف أجعل الخلية الثانية تحسب إجمالي مجموع القيم التي ظهرت خلال تلك الدقيقة ، فيفترض أن تكون قيمة الخلية الثانية = 10 .

لأن القيم التي ظهرت في الخلية الأولى مجموعها = 10 .

لأن : 2 +3+5 = 10 ..

و هكذا .."

أرجو أن تكون المشكلة واضحة الآن .. و لقد حاولت حل المشكلة بواسطة تفعيل حساب التكرار في المسار : أدوات / خيارات / حساب ، و لكن و للأسف مع أن اكسل قبل الصيغة المعادة إلا أنه يجري الحساب بطريقة غريبة فأي تغير في أي خلية في لاورقة بكاملها !!!! يؤثر على قيم جميع الخلايا في جميع الورقة !!!

هذه صورة توضيحية للمشكلة في مشروعي الذي أعمل على إعداده ... .

3e785fabc3.jpg

تم تعديل بواسطه بدووور
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

برجاء المساعدة أيها الكرام ..

الموضوع يهمني للغاية و يتوقف نجاح عملي عليه ..

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

شكرا لمن يمد لي يد العون ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

طال انتظاري يا جماعة ..

زهرة مري علينا الله يخليك ..

و جميع الأعضاء الكرام ..

أكيد المشكلة سهلة ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ما رأيكم سوف أسهل عليكم المشكلة ... :rolleyes: :rolleyes:

فقط اقترحوا علي طريقة ما يمكن أن تكون حلا للمشكلة .. :wacko:

مثلا هل أنا بحاجة إلى الاستعانة بمبرمج محترف ؟!

هل هناك جهة ما في الرياض لديها القدرة على توفير ما أريد ؟؟!

و هكذا .. B)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخت الكريمة بدور

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

لقد وضعت لك الحل سابقا ولا اعلم هل الحل السابق غير صالح او انه غير مناسب

لقد قمت بعمل مثال لحالة مشابهه لسؤالك وقمنا بعمل الصيغة المناسبة وهي

=SUM(هنا الخلية ورقمها)

مثال نرغب في استخراج اجمالي كميات الشراء للبنك الفرنسي اذن نصعد للاعلى الخاص بكتابة الصيغة ونكتب

=SUM(F10)

سيكون الناتج هو 125

وهذا ينطبق ايضا على اجمالي كميات البيع

اجمالي كميات البيع لشركة صافولا

=SUM(G20)

سيكون الناتج هو 100

لكي نقوم بإظهار المجموع مباشرة بقوم بالتالي

1. نضغط على الخلية التي نريد ان يظهر بها الناتج ثم نذهب الى مكان كتابة الصيغة fx ونضغط على حرف المجموع في الاعلى علامة سيجما سيعطينا الدالة ()SUM= الان نذهب للخلية المطلوبة مثلا اخر كميات شراء لبنك الرياض لانها اول خانة وسيظهر لنا في الاعلى الصيغة =SUM(F6) ثم نظغط على علامة الصح التي بجانب fx

2. نقوم بتحديد او التأشير على الخلية الاولى التي عملناها ونضع الماوس مع الضغط على زر الفأرة الايسر في الركن الايسر للخلية ونسحب للاسفل لكل الخلايا وستظهر نتائج جميع الخلايا مباشرة

طبقي هذا ايضا على اجمالي كميات البيع

post-15367-1130780095_thumb.gif

هذا مثال على ذلك

بدور.rar

تم تعديل بواسطه zahrah
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكم

الاخت السائلة تريد حقل يجمع مجموع حقل متغير باستمرار

حالوت بالاكسل ولما اعرف له صراحه

فيه مثال بالاكسس والاكسل

ما ضبط معي الاكسل لكن الاكسس شغال

لازم ضبط اعداد الامان للاكسل الى منخفض لكي يعمل المثال

DB.rar

تم تعديل بواسطه AccessHelp
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

الأخت العزيزة زهرة حقيقة أنا محرجة للغاية بسبب تعاونك الامحدود و تواصلك السخي أرجوا من الله أن يجزيك عني خير الجزاء .. آمين

أختي الكريمة ما تفضلت به لا يحل مشكلتي مع بالغ أسفي و ااعتذاري على إزعاجك ، لأنك لم تتصوري فيما يبدو حقيقة تلك المشكلة و قد أبان عنها الأستاذ الكريم accesshelp بعبارة مختصرة تعبر بكل وضوح عما كنت أود الإفصاح به في كل سطوري السابقة فقال :( الاخت السائلة تريد حقل يجمع مجموع حقل متغير باستمرار )

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

هذا البنك تتغير قيمة خليته التي تعرض "آخر كمية شراء " باستمرار مادام السوق مفتوحا بحسب الصفقات التي تنفذ بين البائعين والمشترين .

فمرة تكون آخر كمية شراء : 100 سهم .

و في المرة التالية تكون : 200 سهم

و قبل إقفال السوق تكون آخر كمية شراء على سبيل المثال أيضا : 200 سهم ..

إذن إذن إذن ..

أقفل السوق الآن و تفرق المتداولون و كانت إجمالي كميات الشراء على بنك الرياض = 500 سهم ..

لأن إجمالي الكميات في المثال السابق = 500 سهم ..

لأن الصفقة الأولى 100 سهم ، والثانية 200 سهم ، و الثالثة 200 سهم ، فمجموع هذه الكميات = 500 سهم ..

الآن الآن و هنا مكمن المشكلة كيف أجعل الخلية المعنونة " إجمالي كميات الشراء " تظهر القيمة النهائية التي خلصنا إليها سابقا و هي 500 سهم من تلقاء نفسها ...

أختي العزيزة ما تفضلت به هو إدراج الدالة ( ()sum) و هذه الدالة لم تؤد الغرض الذي ذكرته في توضيحي الآنف و جربي بنفسك ...

فمثلا عندما تقومين بكتابة الرقم ( في أنموذجك المرفق ) 10 في خلية آخر كمية شراء ..

تظهر تلقائيا هذه القيمة في الخلية إجمالي كميات الشراء ... فتكون القيمة الظاهرة 10 أيضا و هذا ممتاز ..

و لكن عندما تعودين و و تقومين بمسح قيمة الخلية " آخر كمية شراء " و تكتبين عوضا عنها الرقم 40 ..

تتفاجئين بأن الخلية الأخرى " آخر كميات الشراء " تمحو الرقم الأول 10 وتظهر عوضا عنه الرقم 40 ..

وكان يفترض بها أن تظهر ناتج الجمع بين القيمة الأولى و القيمة الثانية فيكون الناتج = 50 ..

لأن 10 + 40 = 50 ...

آسفة على الإطالة ...

الأستاذ الكريم accessshelp أنموذج أكسس اللذي أرفقته صحيح و هو المطلوب ، و لكن أود عمل ذلك في جداول إكسل فهل هو ممكن ؟؟

الأخت العزيزة زهرة ، و الأساتذ الكريم accesshelp أكرر شكري لكما و جزاكما الله عز وجل بخير ما يجزي به عباده الصالحين ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخت الكريمه

نعم يمكن عمل ذلك بالاكسل مثل ما هو في مثال الاكسس

ولكن يحتاج شخص يعرف يتعامل الفيجوال بيسك بالاكسل وانا لا اعرف ذلك

فيه اختلاف بسيط ولكني حاولت دون فائده

والاخوان في المنتدى كثير اللي يعرف للاكسل وإن شاء الله ما يقصرون

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

وجدت الحل وهو في دالة SUM

بصيغة التاليه بما ان الحقل المتغير او الخليه المتغيره هي A1

ونريد جمع كل القيم التي تتغير في هذه الخليه المتغيره

نختر مثلا حقل B1 ونكتب الصيغه التاليه

=SUM(A1;B1)

بما ان الصيغه مكتوبة في الخليه B1 فان الصيغة تحسب او تجمع العدد بين الخليه A1 والخليه B1

وتضيفه للخيه B1

واتمنى يكون هذا هو المطلوب

ومرفق مثال

SUM.rar

تم تعديل بواسطه AccessHelp
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

حل صحيح 100% يا AccessHelp لكن الغريب انني استخدمت نفس الحل و الاكسل يرفض - يعتبره CIRCULAR - فما السبب او كيف فعلتها؟

--------------

خلاص وجدتها و الشكر لك : TOOLS -> OPTIONS-> CALCULATION -> CHECK ITERATION -> SET MAX ITERATION=1 -> OK

و الافضل استخدام دالة المتوسط

=AVERAGE(A1,B1)

تم تعديل بواسطه عماد الخليل
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

قائمة ادوات>خيارات>حسابات> مربع اختيار سمه تكرار > تغير الحد الاقصى للتكرارات>اقصى تغيير .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الأساتذة الأفاضل AccessHelp ، عماد

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

صحيح أنني عندما أقوم بالتجربة على الجدول و ليس به إلا خلية واحدة تحوي الصيغة المشار إليها تكون النتائج صحيحة 100 % و هذا كما في الأنموذج الذي تفضل بإرفاقه الأستاذ AccessHelp

و لكن عندما قمت بتعبئة الصيغة إلى خلايا أخرى ثم بدأت بالتجربة بإدخال أرقام على عدة خلايا أخرى تظهر النتائج بصورة مغلوطة للغاية ..

فأي تغيير في أي خلية يؤثر على جميع خلايا الجدول !! ؟؟

و لكما أن تتأكدا من ذلك في نموذج الأستاذ AccessHelp في مرفقاتي .....

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

و عيدكما مبارك ، و أعاده الله علينا و عليكم باليمن و البركات .. .

و عيدك مبارك يا أخت زهرة و لن أنسى مواقفك النبيلة معي و جزاك الله ألف ألف خير .

SUM.rar

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

علينا وعليك يتبارك إن شاء الله يا بدور الله يعوده علينا وعلى جميع الامه الاسلاميه

هذا مثل على الحل :D

يقولون جات الحزينه تفرح ما لقت لها مطرح :D

والله كلام صحيح لكن بشوف وين الخطأ وبحاول اوصل لحل

وظن المشكله هاذي لها علاقه بخيارات ملف الاكسل لكن إن شاء الله نصل لحل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخت بدور هل وجدت الحل اذا وجدت ان ترفقة او شرح الطريقة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

بسم الله الرحمن الرحيم

الاخوه الكرام

ارفقت ملف صغير كتجربه لا ادرى اذا كان هو المطلوب ام انى اسير فى طريق خطأ

السلام عليكم

UpDate.rar

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أرجو توضيح الطريقة أخي ابو طلال .....

وإذا أدخلنا if الشرطية بامكان الجمع ايضا ......نرجو التوضيح ......

ألف شكر مقدما .......

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اسف لعدم التوضيح

بالنسبة لحل المشكلة فهو كالتالي:

تدخل على محرر الفيجوال بيسيكvba

وتضيف module

وتعلن عن متغير يتم تخزين حاصل الجمع فيه التالي:

Public sum1

ثم في الحدث change تضع الكود التالي:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then

sum1 = sum1 + Target.Cells(1, 1)

Target.Cells(1, 2) = sum1

End If

End Sub

وانا في خدمتك في اي وقت

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكرا لك أخي ابو طلال ...

لك رساله على الخاص ....أرجو الرد ........

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
تفضل مطلوبك

ويحتاج الى تطوير منك

شكرا اخي

يعمل اذا عدلت القيمة يدويا

لكن اذا تغيرت اليا بربطها بقيمة تتحدث اليا

لا يعمل البرنامج الفرعي بشكل صحيح

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
اسف لعدم التوضيح

بالنسبة لحل المشكلة فهو كالتالي:

تدخل على محرر الفيجوال بيسيكvba

وتضيف module

وتعلن عن متغير يتم تخزين حاصل الجمع فيه التالي:

Public sum1

ثم في الحدث change تضع الكود التالي:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then

sum1 = sum1 + Target.Cells(1, 1)

Target.Cells(1, 2) = sum1

End If

End Sub

وانا في خدمتك في اي وقت

مشكور والله يعطيك العافيه تقريبا هو المطلوب

ما هو المطلوب تغيير في الكود حتى ينطبق على الخليه A2 ( تطبيق الكود على مثلا 10 صفوف )

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .