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

مساعدة في تحويل كود إلى وحدة نمطية


haniameen

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

أخواني في هذا المنتدى 

لدي عدد 2 كود vba 

الكود الأول 

Me![text1].FontName = "PT Bold Dusky"

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

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

مع الأخذ في الاعتبار تغيير نوع الخط في كل مرة إن تطلب الأمر 

الكود الثاني : 

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

Option Compare Database

Option Explicit

Dim GrpArrayPage(), GrpArrayPages()
Dim GrpNameCurrent As Variant, GrpNamePrevious As Variant
Dim GrpPage As Integer, GrpPages As Integer

'************ Code End *************
Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)
Dim i As Integer
  If Me.Pages = 0 Then
    ReDim Preserve GrpArrayPage(Me.Page + 1)
    ReDim Preserve GrpArrayPages(Me.Page + 1)
    GrpNameCurrent = Me.[c_safe]
    If GrpNameCurrent = GrpNamePrevious Then
        GrpArrayPage(Me.Page) = GrpArrayPage(Me.Page - 1) + 1
        GrpPages = GrpArrayPage(Me.Page)
            For i = Me.Page - ((GrpPages) - 1) To Me.Page
                GrpArrayPages(i) = GrpPages
            Next i
    Else
        GrpPage = 1
        GrpArrayPage(Me.Page) = GrpPage
        GrpArrayPages(Me.Page) = GrpPage
    End If
  Else
    Me.ctlGrpPages = " ÕÝÍÉ" & GrpArrayPage(Me.Page) & " ãä " & GrpArrayPages(Me.Page)
  End If
  GrpNamePrevious = GrpNameCurrent

End Sub

المطلوب إنشاء وحدة نمطية تستدعي هذا الكود للترقيم في كل تقرير  يتم إنشاؤه بدلا من كتابة هذا الكود كل مرة في حدث عند التنسيق لتذييل الصفحة 

أرجو أن تكون قد وضحت الفكرة 

وحدتين نمطيتين.rar

تم تعديل بواسطه haniameen
رابط هذا التعليق
شارك

 

ضع هذا الكود في وحدة نمطية:

 


Public Sub SetFntName(strFName As TextBox)
   Rem: استبدل خط ايريل بالخط الذي تريد
 strFName.FontName = "Arial"

End Sub

يتم الاستدعاء هكذا:

Call SetFntName(TxtName)

 

 

  • Like 3
رابط هذا التعليق
شارك

1 ساعه مضت, AlwaZeeR said:

 

ضع هذا الكود في وحدة نمطية:

 



Public Sub SetFntName(strFName As TextBox)
   Rem: استبدل خط ايريل بالخط الذي تريد
 strFName.FontName = "Arial"

End Sub

يتم الاستدعاء هكذا:


Call SetFntName(TxtName)

 

 

كيف يمكن الاستدعاء 

هل بوضع 

call setfntnam(txtname) في القيمة الافتراضية ام اين 

وماذا بالنسبة للكود الثاني 

الخاص بترقيم الصفحات

رابط هذا التعليق
شارك

2 ساعات مضت, AlwaZeeR said:

في حدث عند التنسيق او الطباعة عزيزي

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

تحياتي

أولا شكرا أستاذي الوزير على اهتمامك لكن هذه الطريقة لم تفي بالمطلوب  للأسباب الآتية : 

1 - هل المفروض أني أنشء لكل نوع خط وحدة نمطية حيث أنك قمت بتثبيت نوع الخط في الوحدة .... ( توضيح أكثر )طيب لو أخذ مربع نص نوع الخط Arial وأردت أن يأخذ مربع نص آخر نوع خط  آخر سأضطر هنا لتغيير نوع الخط  في الوحدة النمطية إذن فما مصير نوع الخط لمربع النص الأول الذي أخذ نوع الخط Arial  هل سيظل كما هو أم سيأخذ نوع الخط الجديد  

2 - حضرتك أوضحت .... بوضع تعبير استدعاء الوحدة النمطية  في حدث عند التنسيق أو الطباعة .... تخيل أنا عندي أكثر من مربع نص في راس الصفحة مثلا وأردت أن أضع لكل مربع نص نوع خط معين فما العمل ..... مع الاعتبار أن حدث عند التنسيق أو الطباعة لا يدعم مربعات النصوص والتسمية 

ثانيا : المثال في نفس الملف المرفق لنفس التقرير سترى الكود في حدث عند التنسيق لتذييل الصفحة + ثلاث مربعات نصوص ( اثنان غير مرئيان في رأس الصفحة  وواحد في تزييل الصفحة ) مرتبط بهم الكود حتى يعمل 

تم تعديل بواسطه haniameen
رابط هذا التعليق
شارك

تفضل عزيزي

sandanet

 

 

 

testfont-waz.rar

56 دقائق مضت, haniameen said:

- هل المفروض أني أنشء لكل نوع خط وحدة نمطية حيث أنك قمت بتثبيت نوع الخط في الوحدة .... ( توضيح أكثر )طيب لو أخذ مربع نص نوع الخط Arial وأردت أن يأخذ مربع نص آخر نوع خط  آخر سأضطر هنا لتغيير نوع الخط  في الوحدة النمطية إذن فما مصير نوع الخط لمربع النص الأول الذي أخذ نوع الخط Arial  هل سيظل كما هو أم سيأخذ نوع الخط الجديد  

كم خط تريد استخدام؟ وهنا يتم تعديل الوحدة بعدد الخطوط التي تريدها

::

تحياتي

رابط هذا التعليق
شارك

20 دقائق مضت, AlwaZeeR said:

تفضل عزيزي

sandanet

 

 

 

testfont-waz.rar

كم خط تريد استخدام؟ وهنا يتم تعديل الوحدة بعدد الخطوط التي تريدها

::

تحياتي

شكرا اخي الوزير ... 

ولنفرض خمس خطوط 

فهمت حكاية عند التنسيق من مثال   الأخ  sandanet

لا تنسى أخى الوحدة النمطيةالثانية 

منتظر التعديل على وحدة الخطوط 

وأن شاء الله وحدة ترقيم الصفحات 

تم تعديل بواسطه haniameen
رابط هذا التعليق
شارك

استاذنا الفاضل AlwaZeeR بارك الله فيك وشكراً جزيلاً على مجهودك الرائع

اخي الكريم haniameen اذا اردت تغيير الخط في مكان معين فاستخدم طريقتك الاولى اما اذا اردت توحيد الخط حينها يمكنك استخدام الطريقة العامة التي زودنا بها الاخ AlwaZeeR

رابط هذا التعليق
شارك

3 دقائق مضت, sandanet said:

استاذنا الفاضل AlwaZeeR بارك الله فيك وشكراً جزيلاً على مجهودك الرائع

اخي الكريم haniameen اذا اردت تغيير الخط في مكان معين فاستخدم طريقتك الاولى اما اذا اردت توحيد الخط حينها يمكنك استخدام الطريقة العامة التي زودنا بها الاخ AlwaZeeR

أخي sandanet شكرا على اهتمامك مشكلة الخطوط هذه تواجهني في أكسس 2010 وهي غير موجودة في قاعدة mdb 

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

وذلك بعد التعديل على الوحدة كما قال أخينا الوزير 

رابط هذا التعليق
شارك

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