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

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

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

عندى الكود دا     وعايزه امنع حقل 

creat

انه يكون صفر انا عارفه الطريقه فى حالة وضع التصميم فى الجدول

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

Private Sub creat_Change()

    Dim X As Double
    Dim weight As Double
    Dim gfr As Double
    Dim age As Integer
    Dim rsltcreat As Variant
    Dim rsltGFR As Variant

    ' التحقق من أن Me.creat هو رقم
    If IsNumeric(Me.creat.Text) Then
        X = Nz(Me.creat.Text, 0)
        
        ' التحقق من أن قيمة X ليست صفرًا
        If X = 0 Then
            MsgBox "قيمة creat لا يمكن أن تكون صفرًا. يرجى إدخال قيمة صحيحة.", vbExclamation
            Me.creat = Null
            Me.txt_creat = Null
            Me.gfr = Null
            Exit Sub
        End If
        
        Me.txt_creat = X
        
        ' التحقق من وجود قيمة صحيحة للوزن
        If IsNumeric(Me.weight.Value) Then
            weight = Me.weight.Value
            age = Me.age
            
            ' حساب معدل الترشيح الكبيبي (GFR) باستخدام صيغة Cockcroft-Gault
            If Me.gender = "Male" Then
                gfr = (140 - age) * weight / (72 * X)
            Else
                gfr = (140 - age) * weight / (72 * X) * 0.85
            End If
            
            ' تعيين قيمة GFR في الحقل وتنسيقها
            Me.gfr = Format(gfr, "0.00")
        Else
            Me.gfr = Null
        End If
    Else
        Me.txt_creat = Null
        Me.gfr = Null
    End If

    ' حساب قيمة Me.creat_s
    rsltcreat = IIf(IsNumeric(Me.txt_creat), Me.txt_creat, Null)
    If Not IsNull(rsltcreat) Then
        If rsltcreat < Nz(Me.creat_l, 0) Then
            Me.creat_s = "L"
        ElseIf rsltcreat > Nz(Me.creat_h, 0) Then
            Me.creat_s = "H"
        Else
            Me.creat_s = Null
        End If
    End If

    ' حساب قيمة Me.gfr_s
    rsltGFR = IIf(IsNumeric(Me.gfr), Me.gfr, Null)
    If Not IsNull(rsltGFR) Then
        If rsltGFR < Nz(Me.gfr_l, 0) Then
            Me.gfr_s = "L"
        ElseIf rsltGFR > Nz(Me.gfr_h, 0) Then
            Me.gfr_s = "H"
        Else
            Me.gfr_s = Null
        End If
    Else
        Me.gfr_s = Null
    End If

End Sub

 

تم تعديل بواسطه safaa salem5
قام بنشر (معدل)

سلام عليكم جرب المرفق هذا  وشوف اذا يحل مشكلتك ولا لا 

 

واذا بيغت تكتب 0.90 مثلا  لا تكتب صفر ابداي في النقطة . بعدين القينة العشرية  وراح تتسجل معاكي

 

القيمة0.accdb

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

بعد اذن الاستاذ @Mohameddd200300

استخدمة مرفقك 🌹

تقديرين تضيفين اي رقم ( عند فقط التركيز ) يتحول الى المنازل 2

يكون حقل نوعة قياسي اختاري من القيم العشرية 2

طريق ثانية حقلين بحقل على 

Scrollbar 2 

وتركة لج دالتين قبل النقطة وبعد النقطة 

او تضيفين 

Len()-2

؟! او 

 Nz(Me.creat.Text, "." & me.Scrollbar)

معادلات حبيبتي 😍

حساب معدل الترشيح الكبيبي

  @safaa salem5 👍

 

test.gif

القيمة0.accdb

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