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

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

قام بنشر

عيد سعيد ومبارك لكل أعضاء واداريوا المنتدى ومحبيهم ... أعاده الله على الجميع بالخير والسعادة

:: لدي ثلاث ترويسات لنفس التقرير كل ترويسة تحوي عدة تسميات ومربع نص .

:: كيف يمكنني التبديل بين الترويسات في كل مرة يفتح فيها التقرير ؟ القصد هو التعامل مع كل كائنات الترويسة كوحدة واحده من حيث الاخفاء والإظهار .

:: مع شكري وتفديري .

R_MultiHead.rar

قام بنشر
3 دقائق مضت, ناقل said:

عيدك مبارك

يعني المطلوب اخفاء ت1 مثلا واظهار ت2 وهكذا  .... وضح لو تكرمت

:: نعم اخي هذا المطلوب ... ويتم التبديل بينهما من خلال كومبوبوكس او جيك بوكس في الفورم

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

:: شكرا لك اخي الكريم نعم هذا الحل مناسب لكن في هذه الحالة علي ان اضع كل الكائنات فوق بعض في رأس التقرير لانها تحتل نفس المكان .

:: اذا لم يكن هناك حل اخر كان يكون للتقرير اكثر من رأس نخفي ونظهر منها كما نشاء ... ساقبل بهذا الحل مع النقدير.

قام بنشر

وعليكم السلام 🙂

 

حيا الله اخوي محمد ، صار لنا زمن ما شفناك 🙂

 

نعمل الترقيم في النموذج :

image.png.58a2fd68d7cdcf7a7703048c1114820f.png

 

 

يمكن ترك الكائنات في مكانها في تصميم التقرير ، ولكن:

  • نغير اسماء الحقول ، حتى يسهل علينا ، مثل lbl_11 و lbl_12 و lbl_13 للسطر الاول ، وطبعا نفس الترتيب للأسطر الاخرى ،
  • نخفي الحقول الغير مطلوبة (في الكود) ،
  • والحقول المطلوبة ، نعطيها موقع (ابعاد) حقول السطر الاول ، Top و Left (في الكود) ،
  • ونعمل الكود في حدث "عند تنسيق" القسم Report Header :

image.png.09e76d403f8e4e00ad3a991293feb9b1.png

.

Option Compare Database
Option Explicit

Private Sub ReportHeader_Format(Cancel As Integer, FormatCount As Integer)

'خطوة مؤقته لإخفاء جميع الكائنات ، وتحريكهم الى السطر العلوي
    
   'Line 1
    Me.lbl_11.Visible = False
    Me.lbl_12.Visible = False
    Me.lbl_13.Visible = False
    
   'Line 2
    Me.lbl_21.Visible = False           'اخفاء
     Me.lbl_21.Left = Me.lbl_11.Left    'مكانه من يسار التقرير
      Me.lbl_21.Top = Me.lbl_11.Top     'مكانه من علو التقرير
    
    Me.lbl_22.Visible = False
     Me.lbl_22.Left = Me.lbl_11.Left
      Me.lbl_22.Top = Me.lbl_11.Top
    
    Me.lbl_23.Visible = False
     Me.lbl_23.Left = Me.lbl_11.Left
      Me.lbl_23.Top = Me.lbl_11.Top
      
   'Line 3
    Me.lbl_31.Visible = False
     Me.lbl_31.Left = Me.lbl_11.Left
      Me.lbl_31.Top = Me.lbl_11.Top
      
    Me.lbl_32.Visible = False
     Me.lbl_32.Left = Me.lbl_11.Left
      Me.lbl_32.Top = Me.lbl_11.Top
      
    Me.lbl_33.Visible = False
     Me.lbl_33.Left = Me.lbl_11.Left
      Me.lbl_33.Top = Me.lbl_11.Top
    
    
'-----------------------------
    
    
    Dim L
    
    L = Forms!Form1!lst_Line    'نأخذ رقم السطر من النموذج ونختصره في المتغير L
    
'-----------------------------


'اظهار السطر الصحيح ، وتحريكه الى مربعات السطر الاول
    
    Me("lbl_" & L & "1").Visible = True
    Me("lbl_" & L & "2").Visible = True
    Me("lbl_" & L & "3").Visible = True
    
    
    Me("lbl_" & L & "1").Left = Me.lbl_11.Left
    Me("lbl_" & L & "1").Top = Me.lbl_11.Top
    
    Me("lbl_" & L & "2").Left = Me.lbl_12.Left
    Me("lbl_" & L & "2").Top = Me.lbl_12.Top
    
    Me("lbl_" & L & "3").Left = Me.lbl_13.Left
    Me("lbl_" & L & "3").Top = Me.lbl_13.Top
    
    
'تغيير ارتفاع القسم في التقرير
    Me.ReportHeader.Height = Me.Label11.Height * 2
    
End Sub

.

والنتيجة :

image.png.4512e54766fde112901b2057e87e2151.png

.

جعفر

 

 

1228.R_MultiHead.accdb.zip

  • Like 3
  • Thanks 1
قام بنشر
في ٢٨‏/٥‏/٢٠٢٠ at 16:17, jjafferr said:

وعليكم السلام 🙂

حيا الله اخوي محمد ، صار لنا زمن ما شفناك 🙂

نعمل الترقيم في النموذج :

يمكن ترك الكائنات في مكانها في تصميم التقرير ، ولكن:

  • نغير اسماء الحقول ، حتى يسهل علينا ، مثل lbl_11 و lbl_12 و lbl_13 للسطر الاول ، وطبعا نفس الترتيب للأسطر الاخرى ،
  • نخفي الحقول الغير مطلوبة (في الكود) ،
  • والحقول المطلوبة ، نعطيها موقع (ابعاد) حقول السطر الاول ، Top و Left (في الكود) ،
  • ونعمل الكود في حدث "عند تنسيق" القسم Report Header :

جعفر

1228.R_MultiHead.accdb.zip 57.98 kB · 2 تنزيلات

السلام عليكم ... الحفيفة من سوء حظي ان اكون فليل التواصل هذه الايام مع اخوتي في المنتدى يسبب عملي في المستشفى , الصحة والسلامة اتمناها للحميع

الاخ الاستاذ جعفر اتمنى ان تكون ومن تحب بصحة جيدة ... لا يسعني االا ان اقدم لك شكري وامتناني على  هذه الاجابة .😍

  • أفضل إجابة
قام بنشر

وعليكم السلام اخوي محمد 🙂

 

جميع العاملين في المستشفيات (وفي هذه الايام بالذات) هم اصحاب الفضل 🙂

 

عملت تغيير ، فبدل ان يكون عندك ارقام في النموذج ، قد تكون عندك حروف او كلمات وجُمل ، فالتغيير يشمل كل شيء الآن:

image.png.d856adacaf0813b92044ee669d95a162.png

.

واصبح الكود:

Option Compare Database
Option Explicit

Private Sub ReportHeader_Format(Cancel As Integer, FormatCount As Integer)

'خطوة مؤقته لإخفاء جميع الكائنات ، وتحريكهم الى السطر العلوي
    
   'Line 1
    Me.lbl_11.Visible = False
    Me.lbl_12.Visible = False
    Me.lbl_13.Visible = False
    
   'Line 2
    Me.lbl_21.Visible = False           'اخفاء
     Me.lbl_21.Left = Me.lbl_11.Left    'مكانه من يسار التقرير
      Me.lbl_21.Top = Me.lbl_11.Top     'مكانه من علو التقرير
    
    Me.lbl_22.Visible = False
     Me.lbl_22.Left = Me.lbl_11.Left
      Me.lbl_22.Top = Me.lbl_11.Top
    
    Me.lbl_23.Visible = False
     Me.lbl_23.Left = Me.lbl_11.Left
      Me.lbl_23.Top = Me.lbl_11.Top
      
   'Line 3
    Me.lbl_31.Visible = False
     Me.lbl_31.Left = Me.lbl_11.Left
      Me.lbl_31.Top = Me.lbl_11.Top
      
    Me.lbl_32.Visible = False
     Me.lbl_32.Left = Me.lbl_11.Left
      Me.lbl_32.Top = Me.lbl_11.Top
      
    Me.lbl_33.Visible = False
     Me.lbl_33.Left = Me.lbl_11.Left
      Me.lbl_33.Top = Me.lbl_11.Top
    
    
'-----------------------------
    
    
    Dim L As Integer
    
    'بما ان الاختيار من النموذج عبارة حروف/كلمات
    'فنعطي لكل منها رقم سطر
    If Forms!Form1!lst_Line = "A" Then
        L = 1
        
    ElseIf Forms!Form1!lst_Line = "B" Then
        L = 2
        
    ElseIf Forms!Form1!lst_Line = "C" Then
        L = 3
        
    End If

    
'-----------------------------


'اظهار السطر الصحيح ، وتحريكه الى مربعات السطر الاول
    
    Me("lbl_" & L & "1").Visible = True
    Me("lbl_" & L & "2").Visible = True
    Me("lbl_" & L & "3").Visible = True
    
    
    Me("lbl_" & L & "1").Left = Me.lbl_11.Left
    Me("lbl_" & L & "1").Top = Me.lbl_11.Top
    
    Me("lbl_" & L & "2").Left = Me.lbl_12.Left
    Me("lbl_" & L & "2").Top = Me.lbl_12.Top
    
    Me("lbl_" & L & "3").Left = Me.lbl_13.Left
    Me("lbl_" & L & "3").Top = Me.lbl_13.Top
    
    
'تغيير ارتفاع القسم في التقرير
    Me.ReportHeader.Height = Me.Label11.Height * 2
    
End Sub

 

جعفر

1228.R_MultiHead.accdb.zip

  • Like 1
  • Thanks 1
قام بنشر
21 ساعات مضت, jjafferr said:

وعليكم السلام اخوي محمد 🙂

جميع العاملين في المستشفيات (وفي هذه الايام بالذات) هم اصحاب الفضل 🙂

عملت تغيير ، فبدل ان يكون عندك ارقام في النموذج ، قد تكون عندك حروف او كلمات وجُمل ، فالتغيير يشمل كل شيء الآن:

جعفر

1228.R_MultiHead.accdb.zip 63.02 kB · 3 تنزيلات

:: جزاك الله عني كل الخير اخي أستاذ جعفر ... وهيك دللناه عالاخر ... لك الفضل ومني التقدير 😊

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