الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

*تقارير* وضع إطار + تغيير اتجاه الصفحة

مغلق
بدأه أبو عاصم في 19 سبتمبر 2001 · 7 رد · 2,890 مشاهدة · في قسم الأرشيف و المواضيع المميزه
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

إذا أردت وضع إطار حول التقرير!

عندما تحتاج أن تضع إطار للتقرير فما عليك إلا أن تفتح تقريرك وتضع الكود التالي:

Private Sub Report_Page()

Dim intColor As Integer

Dim sngTop As Single, sngLeft As Single

Dim sngWidth As Single, sngHeight As Single

Me.ScaleMode = 3

sngTop = Me.ScaleTop

sngLeft = Me.ScaleLeft

sngWidth = Me.ScaleWidth

sngHeight = Me.ScaleHeight

intColor = RGB(255, 0, 0)

Me.Line (sngTop, sngLeft)-(sngWidth, sngHeight), intColor, B

End Sub

ملاحظة إذا حذفت b فإن البرنامج سيضغ خطا ينطلق من زاويتين

#2

لدي سؤال ياشباب؟

ما الخاصية التي يمكن عن طريقها تغيير اتجاه الصفحة من أفقي إلى عمودي أو العكس

أرجو من يعرف الكود أن يتفضل علينا بنشره هنا

#3

الأخ ابو عاصم

اعتقد أن مشكلة التقرير هي في حفظه عند فتحه فجرب أن تضع أمر الحفظ في أحد أحداث التقرير .

عملت لك هذا الكود كحل مؤقت :

DoCmd.OpenReport "اسم التقرير", acViewDesign

SendKeys "%+"

SendKeys "%م"

SendKeys "{DOWN}", True

SendKeys "ص"

SendKeys "{RIGHT}"

' للصفحة العمودية

SendKeys "%د"

' للصفحة الأفقية

'SendKeys "%ق"

SendKeys "{enter}"

DoCmd.Save acReport, "اسم التقرير"

DoCmd.OpenReport "اسم التقرير", acViewPreview

علما أن الأكسس لدي هو XP فقد تحتاج إلى تغيير بعض مفاتيح الوصول إذا كانت مختلفة عندك وكذلك لاتنسى تغيير اسم التقرير .

ولك تحياتي

#4

الأخوين : أبو عاصم وأبو حمود :

جزيتما خيرا على هذه الفوائد التي لا نستغني عنها .

الإخوة الأفاضل :

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

الأخ أبو حمود :

كتبت كودا يحتوي على ضغطات المفاتيح التي تقوم بجعل التقرير أفقيا دون فتح التقرير على عرض التصميم، وذلك بالشكل التالي :

DoCmd.OpenReport "اسم التقرير", acViewPreview

SendKeys "S"

SendKeys "{RIGHT}"

SendKeys "{TAB}"

SendKeys "{LEFT}"

SendKeys "{ENTER}"

SendKeys "^S"

End Sub

وجعلت هذا الكود في حدث عند نقر زر في نموذج لعرض التقرير ، لكن لم يحصل أي أثر .

ثم جعلته في التقرير نفسه في حدث عند التنشيط ، (طبعا دون السطر الأول) ، لكن لم يفد ، أرجو الإفادة بموضع الخطأ ، ولكم جزيل الشكر .

#5

الأخ حارث

بالنسبة لمفاتيح الوصول فقد كتبت أنت حروف إنجليزية فهل النسخة لديك هي إنجليزية ؟

علما أن سبب عدم اشتغال الكود الذي كتبته في بعض الأحيان هو كون لغة المفاتيح محمولة إلى إنجليزي أثناء نقر الزر وقد حليت المشكلة بالسطر الثاني وهو :

SendKeys "%+"

لإرسال ضربات المفاتيح Alt+ٍShift

أذكر أن أحدهم في المنتدى تكلم عن مشكلة أنه يصمم التقرير أفقي فيظهر عمودي وقد ظهرت هذه المشكلة منذ فترة عندي ، وقد جربت حفظ التقرير بالنقر على Ctrl+s بعد كل فتح فلم يتغير الاعداد فاتضح لي أن المشكلة خطأ من قبل شركة ميكروسوفت في البرمجة وقد بحث عن حل فوضعت عند حدث عند التنشيط أمر حفظ وكان في بعض الأحيان لايتم الحفظ .

طريقة أخرى ليس لتغيير اتجاه الصفحة وإنما لحفظ الإعداد الحالي بعد كل فتح للتقرير :

DoCmd.OpenReport "اسم التقرير", acViewPreview

DoCmd.Save acReport, "اسم التقرير"

طريقة أخرى من للحفظ :

DoCmd.OpenReport "اسم التقرير", acViewPreview

SendKeys "%+"

SendKeys "%م"

SendKeys "ظ"

للتأكد من كون المشكلة هي في الحفظ جرب فتح التقرير ثم حفظه وكرر ذلك واخبرنا بالنتيجة .

الأخ حارث

عندي مشاهدتي للكود الذي كتبته أنت -جزاك الله خير- اتضح لي أنه لا حاجة تدعو لفتح التقرير في عرض التصميم كما كتبته أنا بل يمكن تغيير اتجاه الصفحة وهو في العرض العادي ثم يتم الحفظ بعد ذلك وقد عدلت الكود الى التالي :

DoCmd.OpenReport "اسم التقرير", acViewPreview

SendKeys "%+"

SendKeys "%م"

SendKeys "{DOWN}", True

SendKeys "'ص'"

SendKeys "{RIGHT}"

' للصفحة العمودية

'SendKeys "%د"

' للصفحة الأفقية

SendKeys "%ق"

SendKeys "{enter}"

DoCmd.Save acReport, "اسم التقرير"

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

وللجميع تحياتي

#6

ألأخ / حارث لقد جربت الكود بنفسي على أوفيس 2000 وقام بتغيير الصفحة.

الأخ / أبو حمود شكراً لك على المبادرة في الرد وسرعة الإجابة.

لكن مشكلتي لم تنحل إلى الآن يا أبا حمود.

وذلك أني صممت مصمم تقارير بسيط وأود أن المستخدم يتحكم باتجاه الصحفة قبل تطبيق بقية الكود وما ذلك إلا أن عرض التقرير يترتب عليه متغيرات في الكود تسلتزم قيم معينة بحسب الاتجاه مثل عرض التقرير وارتفاعه -كما في الكود الذي ذكرته لوضع إطار للصفحة.

#7

الأخ أبو حمود جربت الكود الأخير على أكسس XP، وأدى الغرض بشكل رائع ، وقد جعلته في حدث عند تنشيط التقرير فأدى الغرض أيضا ، فلك شكري ودعائي بالتوفيق .

بالنسبة للذي ذكر أنه يصمم التقرير أفقي فيظهر عمودي فهو أنا ، وقد جربت الأكواد التي ذكرتها هناك اليوم على أكسس XP فأدت المطلوب ، لذا أحيل الأخ أبو عاصم على الوصلة التالية :

http://arabteam.nicmatic.com/vb/showthread...97&pagenumber=1

ولكما وللإخوة جميعا تحياتي .

#8

الأخ ابو عاصم

ليس لدي فكرة عن مصمم التقارير الذي ترغب في عمله فلو شرحت لنا كيفية عمله يمكن أن أفيدك بشي ء.

الأخ حارث

بالنسبة للأوفس XP الذي ركبته هل هو نسخة بيتا أم نسخة الاصدار النهائي وإذا كانت نسخة اصدار نهائي هل طالبك بالتنشيط ، آمل الإفادة والله يحفظك .

ولك تحياتي

هذا الموضوع مغلق.

مواضيع مشابهة