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

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

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

لو افترضنا ان يوجد فى textbox1 قيمة 15    نريد تحويلها على textbox4 ,textbox7 

ليكون الناتج فى textbox4    7

ليكون الناتج فى textbox4    8

ولا لايعمل فما الحل

Private Sub CommandButton26_Click()
    Dim total200 As Integer, total100 As Integer, total50 As Integer, totalValue As Integer
    Dim percent200 As Double, percent100 As Double, percent50 As Double, halfPercent As Double
    Dim group1Total As Integer, group2Total As Integer
Dim CalculateTotal As Integer
 
' التحقق من صحة المدخلات
    If Not IsNumeric(TextBox11.Text) Or Not IsNumeric(TextBox12.Text) Then
      '  MessageBox.Show ("الرجاء إدخال قيم عددية في حقل الإجمالي")
        Exit Sub
    End If
    
' التحقق من صحة البيانات
        If total200 < 0 Or total100 < 0 Or total50 < 0 Then
            MessageBox.Show ("الرجاء إدخال قيم موجبة")
            Exit Sub
        End If

        If group1Total + group2Total < totalValue Then
            MessageBox.Show ("مجموع القيم المستهدفة أقل من مجموع القيم المتاحة")
            Exit Sub
        End If
    
' جمع قيم الفئات
    total200 = Val(TextBox1.Text) + Val(TextBox4.Text) + Val(TextBox7.Text)
    total100 = Val(TextBox2.Text) + Val(TextBox5.Text) + Val(TextBox8.Text)
    total50 = Val(TextBox3.Text) + Val(TextBox6.Text) + Val(TextBox9.Text)
   totalValue = total200 * 200 + total100 * 100 + total50 * 50

    ' حساب النسبة المئوية لكل فئة
   percent200 = total200 * 200 / totalValue
    percent100 = total100 * 100 / totalValue
   percent50 = total50 * 50 / totalValue

    ' توزيع النسب المئوية على المجموعتين
    group1Total = Val(TextBox11.Text)
   group2Total = Val(TextBox12.Text)
 
' توزيع فئة 200
TextBox4.Text = Math.Round((percent200 * 1 - halfPercent) * group1Total / 200)
TextBox7.Text = Math.Round((percent200 * (1 - halfPercent)) * group2Total / 200)

' توزيع فئة 100
TextBox5.Text = Math.Round((percent100 * 1 - halfPercent) * group1Total / 100)
TextBox8.Text = Math.Round((percent100 * (1 - halfPercent)) * group2Total / 100)

' توزيع فئة 50
TextBox6.Text = Math.Round((percent50 * 1 - halfPercent) * group1Total / 50)
TextBox9.Text = Math.Round((percent50 * (1 - halfPercent)) * group2Total / 50)

 halfPercent = 0.5

' حساب القيم العددية الإجمالية
    Me.TextBox58 = Val(TextBox1) + Val(TextBox2) + Val(TextBox3)
    Me.TextBox59 = Val(TextBox4) + Val(TextBox5) + Val(TextBox6)
    Me.TextBox60 = Val(TextBox7) + Val(TextBox8) + Val(TextBox9)

' حساب القيم النقدية الإجمالية باستخدام الدالة
    Me.TextBox13.Value = Val(Me.TextBox1.Value) * 200
    Me.TextBox14.Value = Val(Me.TextBox2.Value) * 100
    Me.TextBox15.Value = Val(Me.TextBox3.Value) * 50
    Me.TextBox16.Value = Val(Me.TextBox4.Value) * 200
    Me.TextBox17.Value = Val(Me.TextBox5.Value) * 100
    Me.TextBox18.Value = Val(Me.TextBox6.Value) * 50
    Me.TextBox19.Value = Val(Me.TextBox7.Value) * 200
    Me.TextBox20.Value = Val(Me.TextBox8.Value) * 100
    Me.TextBox21.Value = Val(Me.TextBox9.Value) * 50

End Sub

للاسف يوجد مشكلة فى الكودين هذا

' توزيع فئة 200
TextBox4.Text = Math.Round((percent200 * 1 - halfPercent) * group1Total / 200)
TextBox7.Text = Math.Round((percent200 * (1 - halfPercent)) * group2Total / 200)

' توزيع فئة 100
TextBox5.Text = Math.Round((percent100 * 1 - halfPercent) * group1Total / 100)
TextBox8.Text = Math.Round((percent100 * (1 - halfPercent)) * group2Total / 100)

' توزيع فئة 50
TextBox6.Text = Math.Round((percent50 * 1 - halfPercent) * group1Total / 50)
TextBox9.Text = Math.Round((percent50 * (1 - halfPercent)) * group2Total / 50)

 halfPercent = 0.5

 

ولقد استعملت اكثر من دالة ولا يعمل معى مثل


TextBox4.Text = Int((percent200 * 1 - halfPercent) * group1Total / 200)
TextBox4.Text = Math.Round((percent200 * 1 - halfPercent) * group1Total / 200)
TextBox4.Text = Fix((percent200 * 1 - halfPercent) * group1Total / 200)

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

 

 

 

 

 

 

2000.png

3000.png

مسألة.xlsm

تم تعديل بواسطه mahmoud nasr alhasany

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