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

جعل قيمة الخلية التي تحوي الصيغة ثابتة بعد أول حساب لها


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

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

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

والملف المرفق يوضح المطلوب وجزاكم الله كل خير

برنامج حسابات.rar

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

أخي الكريم أحمد

ضع الكود التالي في حدث ورقة العمل ..كليك يمين على اسم ورقة العمل "عميل رقم1" ثم اختر الأمر View Code والصق الكود التالي ..

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Target.Column = 3 And Target.Row > 10 Then
        Application.EnableEvents = False
        Application.ScreenUpdating = False
            Target.Offset(, 2).Value = Target.Value * Range("L3").Value
        Application.ScreenUpdating = True
        Application.EnableEvents = True
    End If
End Sub

يمكنك تجربة الكود عن طريق إدخال كميات في عمود الكمية العمود C > وجرب تغير في خلية السعر L3 ...

تقبل تحياتي

 

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

في ١٣‏/١‏/٢٠١٦ at 22:57, ياسر خليل أبو البراء said:

أخي الكريم أحمد

ضع الكود التالي في حدث ورقة العمل ..كليك يمين على اسم ورقة العمل "عميل رقم1" ثم اختر الأمر View Code والصق الكود التالي ..


Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Target.Column = 3 And Target.Row > 10 Then
        Application.EnableEvents = False
        Application.ScreenUpdating = False
            Target.Offset(, 2).Value = Target.Value * Range("L3").Value
        Application.ScreenUpdating = True
        Application.EnableEvents = True
    End If
End Sub

يمكنك تجربة الكود عن طريق إدخال كميات في عمود الكمية العمود C > وجرب تغير في خلية السعر L3 ...

تقبل تحياتي

 

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

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

أخي الكريم

جرب الكود بهذا الشكل

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Target.Row > 10 Then
        If Target.Column >= 3 And Target.Column <= 60 And Target.Column Mod 3 = 0 Then
            Application.EnableEvents = False
            Application.ScreenUpdating = False
                Target.Offset(, 2).Value = Target.Value * Target.Offset(, 1).Value
            Application.ScreenUpdating = True
            Application.EnableEvents = True
        End If
    End If
End Sub

أرجو أن يفي بالغرض

 

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

في ١٣‏/١‏/٢٠١٦ at 23:28, ياسر خليل أبو البراء said:

أخي الكريم

جرب الكود بهذا الشكل


Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If Target.Row > 10 Then
        If Target.Column >= 3 And Target.Column <= 60 And Target.Column Mod 3 = 0 Then
            Application.EnableEvents = False
            Application.ScreenUpdating = False
                Target.Offset(, 2).Value = Target.Value * Target.Offset(, 1).Value
            Application.ScreenUpdating = True
            Application.EnableEvents = True
        End If
    End If
End Sub

أرجو أن يفي بالغرض

 

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

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

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

أخي الكريم

الدمج هو المشكلة .. قم على سبيل المثال بإزالة الدمج في النطاق D11:D376 ثم ضع المعادلة التالية في الخلية D11 ثم قم بسحبها

=$L$3

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

وجرب الكود مرة أخرى .. وأخبرني بالنتيجة

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

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

:smile::smile::smile::smile::smile::smile::signthankspin:

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

أخي الكريم أحمد

لن أقول أهلاً بك في منتدى أوفيسنا ولكن أقول أهلاً بك بين إخوانك في أسرة أوفيسنا ..لعل المعنى يصل إليك بشكل أفضل

وفي انتظار المزيد من مشاركاتك القيمة والمفيدة للجميع

تقبل تحياتي

  • 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