Ahmed.IQ قام بنشر ديسمبر 5, 2017 قام بنشر ديسمبر 5, 2017 السلام عليكم ورحمة الله لو عندي حقول كالتالي الاسم السنة المبلغ بالتقرير ستظهر بالشكال التالي الاسم المبلغ السنة عمر 10000 2017 خالد 5000 2017 عمر 20000 2016 خالد 10000 2016 طيب لو حبيت اعدل بشكل التقرير يعني الاسم 2017 2016 عمر 10000 20000 خالد 5000 10000 هل هناك طريقة لعمل هذه الحركة بالتقرير؟ مع جزيل الشكر عرض تقرير.zip
عبد اللطيف سلوم قام بنشر ديسمبر 5, 2017 قام بنشر ديسمبر 5, 2017 شوف هيك طلبك حسب ما افهمت حاولت اساعدك عرض تقرير.rar
Ahmed.IQ قام بنشر ديسمبر 5, 2017 الكاتب قام بنشر ديسمبر 5, 2017 شكراً استاذ عبدالطيف على الرد .. لكن لو اتت سنة 2018 هل سأقوم ببناء استعلام اخر واضع الشرط 2018 .. انا احتاجه ان يقوم بعرضها بشكل تلقائي لو عملت كروب للسنة سيقوم بعرضها لكن بشكل عامودي انا احتاجه ان يعرضها بشكل افقي شكرا لك
jjafferr قام بنشر ديسمبر 5, 2017 قام بنشر ديسمبر 5, 2017 السلام عليكم تستطيع عمل استعلام CrossTab ، والذي سيعطيك نتائج صحيحة ، . . ولكن في التقرير يمكنك مسبقا ان تضيف كم سنه للمستقبل ، وبرمجيا تخبئ العمود اذا مافي بيانات لتلك السنه ، وهذه طريقة عمل الاعمدة في استعلام CrossTab واللي على اساسه تعمل التقرير: . وهناك طريقة اخرى لعمل التقرير: . وهنا سؤال آخر عن نفس الموضوع: جعفر 783.عرض تقرير.accdb.zip 3
Ahmed.IQ قام بنشر ديسمبر 5, 2017 الكاتب قام بنشر ديسمبر 5, 2017 شكرأ اخ جعفر حفظك الله من كل مكروه ... لكن اخفاء الحقل مثلا حقل اسميه A2018 لو تم اضافة السنة للجدول يتم اظهار الحقل في التقرير وجعل مسارة ياخذ 2018 من الاستعلام ... قمت بعمل دالة دي لوك اب للبحث عن السنة بعد اضافتها لكن لم تعمل ودي كونت ايضاً للبحث عن القيمة ولم تعمل ايضاً ...
jjafferr قام بنشر ديسمبر 5, 2017 قام بنشر ديسمبر 5, 2017 السلام عليكم رجاء متابعة عمل الاستعلام CrossTab في اول مشاركة اعلاه، الان نريد التقرير ان يكون الى سنة 2020 مثلا ، فلاحظ اننا اضفنا هذه السنوات في عمود السنوات Yeaa ، والذي هو "مسمى للعمود" Column Heading : . على اساسه ، نرى ان الاستعلام اعطانا اعمدة للسنوات التي اردناها ، والسنه اللي ما فيها قيمة ، تركها فاضية (وهو المطلوب): . طلبت من الاكسس يعمل تقرير من الاستعلام ، ونرى ان الاستعلام هو مصدر بيانات التقرير: . لاحظ طريقة تسميتنا لكائن التسمية ، وقمنا بهذا العمل لتسهيل عمل الكود: . ثم استعملنا هذا الكود ، ليجعل عرض الحقول = 0 ، للسنوات التي لا يوجد بها قيمة ، ويخفيها كذلك: Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) Dim ctrl As Control Dim A As Integer For Each ctrl In Me.Controls If ctrl.ControlType = acTextBox And IsNumeric(ctrl.Name) Then A = DCount("*", "Table1", "[Yeaa]=" & Val(ctrl.Name)) 'Debug.Print "A " & A & "-" & ctrl.Name If A = 0 Then ctrl.Width = 0 ctrl.Visible = False Me("Label_" & ctrl.Name).Width = 0 Me("Label_" & ctrl.Name).Visible = False Else ctrl.Width = 1 * 1440 ctrl.Visible = True Me("Label_" & ctrl.Name).Width = 1 * 1440 Me("Label_" & ctrl.Name).Visible = True End If End If Next End Sub . وهذه هي النتيجة ، اعطانا التقرير السنوات التي بها قيمة فقط: . وللتجربة ، اضفنا قيمة لسنة 2018 . فكانت نتيجة التقرير ، وهو المطلوب: . ولكن لم يعجبني تنسيق التقرير المائل لليسار ، فأردت ان اجعله في وسط الصفحة ، بغض النظر عن بيانات السنوات ، فأضفت حقل فاضي وكائن تسمية ، شفافي الخلفية والاطراف ، وغير مضمن: . وعليه ، تغير الكود ليقوم بتوسعة هذين الحقلين المطاطين ، فاصبح: Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) Dim ctrl As Control Dim A As Integer Dim Empty_Cells As Integer Empty_Cells = 0 For Each ctrl In Me.Controls If ctrl.ControlType = acTextBox And IsNumeric(ctrl.Name) Then A = DCount("*", "Table1", "[Yeaa]=" & Val(ctrl.Name)) 'Debug.Print "A " & A & "-" & ctrl.Name If A = 0 Then ctrl.Width = 0 ctrl.Visible = False Me("Label_" & ctrl.Name).Width = 0 Me("Label_" & ctrl.Name).Visible = False Empty_Cells = Empty_Cells + 1 Else ctrl.Width = 1 * 1440 ctrl.Visible = True Me("Label_" & ctrl.Name).Width = 1 * 1440 Me("Label_" & ctrl.Name).Visible = True End If End If Next Me.Empty_Space.Width = (1 * 1440 * Empty_Cells) / 2 Me.Label_Empty_Space.Width = Me.Empty_Space.Width End Sub . وهذا التقرير بالتنسيق الجديد ، وبدون 2018 . وعند اضافة 2018 في بيانات الجدول ، نلاحظ ان التقرير اخذ تنسيقه الصحيح في وسط الصفحة كذلك: . فإقتراحي ان تجرب احجام الحقول (العرض المستخدم في هذا البرنامج هو 1 بوصة) والخط بما يتناسب في التقرير ، ثم تدخل في الاستعلام السنوات المستقبلية ، ويكون التقرير جاهز لكذا سنة في المستقبل ، الى ان تقوم بعمل تحديث للبرنامج ، وتحذف السنوات القديمة ، وتستبدلها بسنوات مستقبلية جديدة جعفر 783.عرض تقرير.accdb.zip 1
jjafferr قام بنشر ديسمبر 5, 2017 قام بنشر ديسمبر 5, 2017 وتغيير اخير ، إضافة عرض الحقول بغير بيانات ، الى الحقول التي بها بيانات ، وبهذه الطريقة الحقول دائما تملئ عرض التقرير عمل التجربة في تقرير جديد: . . جعفر 783.عرض تقرير.zip 3
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.