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

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

قام بنشر

السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل

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

مثال:

لعرض التقرير :

من النموذج  frm_examen_fin_formation 

اختار:

السنة: 2021/2020

الدرجة: معلم

البلد: عمان

لكن قبل عرض التقرير المسمى rap_pv  يجب عمل مقارنة بين المعطيات المذكورة أعلاه ومقارنته في الجدول  المسمىtab_hauteur_range

في الجدول نجد مايلي:

السنة: 2021/2020

الدرجة: معلم

البلد: عمان

ارتفاع الصف: 1سم

اسم التقرير : rap_pv

- المقارنة بين المعطيات المختارة من النموذج (السنة - الدرجة - البلد-اسم التقرير ) نبحث عنها في الجدول tab_hauteur_range  والتي تكون متشابها

يتم على أساسها تحديد ارتفاع صف التقرير

و في هذا المثال بعد المقارنة  ارتفاع صف التقرير هو 1 سم

 

- وإذا اخترت من النموذج الاختيارات  وعملت مقارنة ولم اجد ما يشابها في الجدول  tab_hauteur_range   اجعل ارتفاع صف التقرير  تلقائا  هو 0.7

بهذا المبدأ أريد التحكم في ارتفاع صف التقرير

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

 

في التقرير : rap_pv  توجد احيانا حقول كثيرة وقد اختصرتها فقط

نتمنى اني اوصلت الفكرة وان شاء الله يمكن تجسيدها

الرجاء المساعدة والتوجيه وبارك الله فيكم

 

baseM.accdb

قام بنشر
6 ساعات مضت, moho58 said:

السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل

 

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

كفكرة بسيطة ، في مديول جديد ، استعمل الدالة التالية :-

Public Function GetTxtHeight(annee As String, grade As String, wilaya As String, nomRapport As String) As Single
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim hauteur As Single
    
    Set db = CurrentDb
    Set rs = db.OpenRecordset( _
        "SELECT hauteur_rang FROM tab_hauteur_range " & _
        "WHERE annee = '" & annee & "' " & _
        "AND grade = '" & grade & "' " & _
        "AND wilaya = '" & wilaya & "' " & _
        "AND nom_raport = '" & nomRapport & "'", dbOpenSnapshot)
    
    If Not rs.EOF Then
        hauteur = rs!hauteur_rang * 567
    Else
        hauteur = 0.7 * 567
    End If
    
    rs.Close: Set rs = Nothing: Set db = Nothing
    GetTxtHeight = hauteur
End Function

 

ثم في حدث الزر عند التقر لفتح التقرير :-

Private Sub أمر2_Click()
    Dim h As Single
    Dim annee As String, grade As String, wilaya As String, rapport As String
    
    rapport = "rap_pv"
    
    annee = Me.annee
    grade = Me.grade1
    wilaya = Me.wilaya1
    
    h = GetTxtHeight(annee, grade, wilaya, rapport)
    
    TempVars!Temp_Hauteur = h
    
    DoCmd.OpenReport rapport, acViewPreview
End Sub

 

وفي حدث عند الفتح للتقرير :-

Private Sub Report_Open(Cancel As Integer)
    Dim h As Single
    If Not IsNull(TempVars!Temp_Hauteur) Then
        h = TempVars!Temp_Hauteur
    Else
        h = 0.7 * 567
    End If
    Me.nom.Height = h
    Me.prenom.Height = h
End Sub

 

مع ضرورة عدم تمكين image.png.7e867ff45321515e19cc215a59ae3ea5.png لمربعي النص ( nom و prenom )

 

الملف :-

 

baseM.zip

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.

  • تصفح هذا الموضوع مؤخراً   1 عضو متواجد الان

×
×
  • اضف...

Important Information