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

سؤال عن كيفية التغلب على المرجع الدائري


إذهب إلى أفضل إجابة Solved by ياسر خليل أبو البراء,

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

السادة الكرام مطوري ومشرفي الإكسل المحترمين:

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

سؤالي هنا عن إمكانية  التغلب على المرجع الدائري بواسطة عمود مساعد أو كود ....
فإن كتبنا نسبة الحسم بعمود تظهر النتيجة بقيمة الحسم بعمود آخر... وكذلك العكس صحيح؟

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

مرجع دائري.rar

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

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

أخي الحبيب أبو يوسف

ما هي المعادلات المستخدمة ؟يرجى إدراج بعض النتائج المتوقعة ..

تم تعديل بواسطه ياسر خليل أبو البراء
  • Like 1
رابط هذا التعليق
شارك

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

أخي الحبيب رأيت مثل هذه المعادلة منجز عملها على برنامج  9.0 FoxPro  أي رأيت النتيجة إن وضعت الرقم بخلية قيم الحسم تتحول إلى نسبة معينة بنسبة الحسم وكذلك العكس.

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

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

 

مرجع دائري.rar

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

هو فيه حل لمشكلة المرجع الدائري .. من خلال خصائص الإكسيل ..Excel Options ثم اختر Formulas ثم علم علامة صح على المربع بجانب الخيار المسمى Enable Iteratve calculation

ولكن ما هو شكل النتائج المتوقعة مع المجموع 100 على سبيل المثال .. لأن الناتج في هذه الحالة وبالاحتفاظ بالمعادلات يساوي 0

...

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

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    If Target.Address = "$E$4" Then Target.Offset(, 1) = Target / Target.Offset(, -1)
    If Target.Address = "$F$4" Then Target.Offset(, -1) = Target / Target.Offset(, -2)
    Application.EnableEvents = True
End S

 

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

هو فيه حل لمشكلة المرجع الدائري .. من خلال خصائص الإكسيل ..Excel Options ثم اختر Formulas ثم علم علامة صح على المربع بجانب الخيار المسمى Enable Iteratve calculation

ولكن ما هو شكل النتائج المتوقعة مع المجموع 100 على سبيل المثال .. لأن الناتج في هذه الحالة وبالاحتفاظ بالمعادلات يساوي 0

...

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

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    If Target.Address = "$E$4" Then Target.Offset(, 1) = Target / Target.Offset(, -1)
    If Target.Address = "$F$4" Then Target.Offset(, -1) = Target / Target.Offset(, -2)
    Application.EnableEvents = True
End Sub

 

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

شكراً لا تكفي يا أبا البراء الحبيب.

مرجع دائري.rar

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

وعليكم السلام أبي الروحي أبو يوسف

هل تم الأمر كما تريد ؟

إذا كان الأمر قد تم  فيرجى تحديد أفضل إجابة ليظهر الموضوع مجاب

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

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

إن كان المجموع 100 وكانت النسبة 25% مثلاً كان لا بد أن تظهر قيمة الحسم 25 

وإن كان المجموع 50 مثلاً وكانت قيمة الحسم 12.5 لا بد أن تظهر نسبة الحسم 25%

مع جزيل شكري.

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

  • أفضل إجابة

تفضل أخي الغالي أبو يوسف الملف التالي

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("D4:F4")) Is Nothing Then
        Application.EnableEvents = False
            If Target.Address = "$D$4" Or Target.Address = "$E$4" Then _
            Cells(4, 6) = (Cells(4, 5) * Cells(4, 4) / 100) * 100
            
            If Target.Address = "$D$4" Or Target.Address = "$F$4" Then _
            Cells(4, 5) = (Cells(4, 6) / Cells(4, 4) * 100) / 100
        Application.EnableEvents = True
    End If
End Sub

 

Circular Reference YasserKhalil.rar

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

السلام عليكم أخي الحبيب أبو البراء 

كود رائع وحل مبهر جزاكم الله خيرا ..وأحسن إليكم

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

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

وعليكم السلام أخي الغالي أبو يوسف

الحمد لله أن تم المطلوب على خير ، حتى لا تظن أن عجلات القطار ستتوقف في كل المحطات .. فما زال في القطار بعض العجلات التي يمكن أن تساعد على السير قدماً

تقبل وافر تقديري واحترامي

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

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

وجزيت خيراً بمثله أخي الحبيب الغالي أبو يوسف

لكم يسعدني أنني استطعت أن أقدم لك شيئاً ولو بسيطاً

تقبل وافر تقديري واحترامي

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information