اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

قام بنشر

حتى الآن ما وصلت الفكرة

لان الحقول في الاستعلام ستكون ثابته  ومعلومة  كما هي في الجدول 

اشرح لي  الفكرة ولماذا تريد عد هذه الحقول ؟

 

قام بنشر

وعليكم السلام:smile:

 

بعد إذن أخي ابوخليل:smile:

 

عملت زر في النموذج ، اسمه cmd_Filled_Fields ، وهذه نتيجة حدث الضغط على الزر:

534.Clipboard01.jpg

.

وهذا كود الحدث:


Private Sub cmd_Filled_Fields_Click()

    Dim rst As DAO.Recordset
    Dim fld As Field
    Dim f As String
    
    Set rst = CurrentDb.OpenRecordset("Select * From testq")
    rst.MoveFirst
    
    Counter = 0
    f = ""
    
    For Each fld In rst.Fields
        
        If Len(fld.Value & "") <> 0 Then
            Counter = Counter + 1
            f = f & ", " & fld.Name
        End If

    Next
    
    MsgBox Counter & vbCrLf & "ÍÞæá ÝíåÇ ÈíÇäÇÊ¡ æåí" & vbCrLf & Mid(f, 3)
    
End Sub

.

جعفر

قام بنشر (معدل)
4 hours ago, ابوخليل said:

عدد الحقول التي تشتمل على بيانات 

تفضل الحل في المرفق

 

Test2.rar

ممكن لو سمحت النتيجة تكون فى حرف 

لتكون داخل الجدول
كده انشأ خلية غير 

المجموع مد خلش الجدول

 

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

علمونا في السابق عدم  ادراج حقل محسوب داخل الجدول  

قالوا :  للتقليل من حجم القاعدة ولأن الاستعلام يقوم مقام الجدول 

وايضا امكانية استخراج  النتيجة بالكود

علما انهم اوجدوا في جدول  القواعد الجديدة لأكسس حقول محسوبة

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

قام بنشر
1 ساعه مضت, ابوخليل said:

علمونا في السابق عدم  ادراج حقل محسوب داخل الجدول  

قالوا :  للتقليل من حجم القاعدة ولأن الاستعلام يقوم مقام الجدول 

السلام عليكم أخونا العود:smile:

 

الظاهر تم استبدال قواربنا مال Bit و Byte ، بسفن اكبر حجما ، ولكننا صامدون ان شاء الله :wavetowel:

 

جعفر

1 ساعه مضت, ابوخليل said:

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

 

في هذه الحالة الكود سيصبح:

Private Sub cmd_Filled_Fields_Click()

    Dim rst As DAO.Recordset
    Dim fld As Field
    Dim f As String
    
    Set rst = CurrentDb.OpenRecordset("Select * From testq")
    rst.MoveFirst
    
    Counter = 0
    f = ""
    
    For Each fld In rst.Fields
        
        If Len(fld.Value & "") <> 0 or fld.Name <> "g" Then
            Counter = Counter + 1
            f = f & ", " & fld.Name
        End If

    Next
    
    	rst.edit
		rst!g=Counter
	rst.update

	rst.close : set rst=nothing

    MsgBox Counter & vbCrLf & "حقول فيها بيانات، وهي" & vbCrLf & Mid(f, 3)
    
End Sub

 

جعفر

قام بنشر
17 hours ago, ابوخليل said:
5 hours ago, jjafferr said:

السلام عليكم أخونا العود:smile:

 

الظاهر تم استبدال قواربنا مال Bit و Byte ، بسفن اكبر حجما ، ولكننا صامدون ان شاء الله :wavetowel:

 

جعفر

 

في هذه الحالة الكود سيصبح:



Private Sub cmd_Filled_Fields_Click()

    Dim rst As DAO.Recordset
    Dim fld As Field
    Dim f As String
    
    Set rst = CurrentDb.OpenRecordset("Select * From testq")
    rst.MoveFirst
    
    Counter = 0
    f = ""
    
    For Each fld In rst.Fields
        
        If Len(fld.Value & "") <> 0 or fld.Name <> "g" Then
            Counter = Counter + 1
            f = f & ", " & fld.Name
        End If

    Next
    
    	rst.edit
		rst!g=Counter
	rst.update

	rst.close : set rst=nothing

    MsgBox Counter & vbCrLf & "حقول فيها بيانات، وهي" & vbCrLf & Mid(f, 3)
    
End Sub

 

جعفر

ممكن تطبيقها على المثال لانه لم يضبط معى 

ممكن تطبيقها على المثال لانه لم يضبط معى 

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information