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

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

قام بنشر

السلام عليكم في هذا المرفق قاعدة بيانات مصغره

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

مع فائق الاحترام

مطابقة موجودات.rar

قام بنشر

هذا لايفي بالغرض لان التقرير مبني على كود يخفي الحقول التي لاتحتوي على قيم وكذلك الحقول ابعادها مفروضه من قبل الكود لذلك انا احتاج الى حل برمجي

شكراااا على العموم

قام بنشر

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

Me.TextBox1.Move(Left,Top,Widh,Height)

 

اقترح عليك ان يتم تضمينها بشرط

If Len([TextBox1]) >10 then 
	Me.TextBox1.Move "", "" , 10 * 200 ,""
End if

مع ملاحظة أن سوف تتعامل مع العمود و ليس السطر

  • Like 3
قام بنشر
54 دقائق مضت, د.كاف يار said:

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

Me.TextBox1.Move(Left,Top,Widh,Height)

 

اقترح عليك ان يتم تضمينها بشرط

If Len([TextBox1]) >10 then 
	Me.TextBox1.Move "", "" , 10 * 200 ,""
End if

مع ملاحظة أن سوف تتعامل مع العمود و ليس السطر

شكراا جزيلا دكتور على الاجابة ولكن هل اضع هذا الكود في تنسيق كل عمود ام اين اضعه مع العلم اني لدي 74 حقل

اتمنى تطبيقه من حضرتك على المرفق 

مطابقة موجودات.rar

قام بنشر (معدل)

شكرااا جزيلا استاذ جعفر على مرورك الكريم

الحقيقة ان تقريري يحتوي على اكثر من 70 حقل استطعت من خلال مساعدة الاساتذه احتواءها في صفحة واحدة 

وذلك بعد اخفاء الحقول التي لاتحتوي على قيمة واظهار توزيع الحقول التي تحتوي على قيمة اكبر من صفر بالتتالي 

كل مااريده هو اتساع الحقل الذي يحتوي على عدد اكثر من ستة ارقام لتكون الارقام مقرؤءه بحجم خط واضح وكبير اي لا اريد تصغير الخط انما اريد توسيع الحقل بحيث يبقى بالحجم

الذي نقرره 

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

وقاعدة البيانات مرفقة في الاعلى اتمنى الاطلاع عليها لتتضح الصوره اكثر

تم تعديل بواسطه ابو رسول
  • أفضل إجابة
قام بنشر

تفضل يا سيدي 🙂

 

image.png.bd132870813d25a87ed9692031d0c62e.png

.

وهذا الجزء من الكود الذي تم تعديله:

Me.FilterOn = True
Me.Filter = "[yer] = " & MyYear & " and [num] ='" & MyNumnf & "' and [nu] ='" & MyMntj & "' and [NameEmb] ='" & MyMonth & "' and [jh] ='" & MyNoa & "'"

' يتم حساب عدد الحقول التي بها أرقام
    For i = 1 To 74

        fld_value = DSum("fld" & i, "tbl", "[yer] = " & MyYear & " and [num] ='" & MyNumnf & "' and [nu] ='" & MyMntj & "' and [NameEmb] ='" & MyMonth & "' and [jh] ='" & MyNoa & "'")

        If fld_value > 0 Then
            'Debug.Print fld_value
            'If DSum("fld" & i, "tbl", "[Name1]='" & Myfilter & "'") > 0 Then
            flCnt = 1 + flCnt
            
            'إظهار الحقول غير الفارغة
            Me("fld" & i & "").visible = True
            Me("lbl" & i & "").visible = True
            Me("s" & i & "").visible = True
            ' حساب عرض كل حقل
            Me("fld" & i & "").Width = Len(CStr(fld_value)) * 145.5
            Me("LBL" & i & "").Width = Len(CStr(fld_value)) * 145.5
            Me("s" & i & "").Width = Len(CStr(fld_value)) * 145.5
        End If
    Next i

    If flCnt = 0 Then
        MsgBox "لا توجد حقول بها قيمة", , "خطأ"
        DoCmd.CancelEvent
        Exit Sub
    End If

' حساب عرض كل حقل
'For i = 1 To 74
'Me("fld" & i & "").Width = Me.Name1.Left / flCnt
'Me("LBL" & i & "").Width = Me.Name1.Left / flCnt
'Me("s" & i & "").Width = Me.Name1.Left / flCnt
'Next i
' إعادة توزيع الحقول غير الفارغة
For i = 74 To 1 Step -1
Me("fld" & i & "").Left = WidthFld
Me("lbl" & i & "").Left = WidthFld
Me("s" & i & "").Left = WidthFld
If Me("fld" & i & "").visible Then
'WidthFld = Me("fld" & i & "").Width + WidthFld
WidthFld = Me("s" & i & "").Width + WidthFld
End If

Next i

 

جعفر

 

مطابقة موجودات2.zip

  • Like 2
  • Thanks 1
قام بنشر
17 ساعات مضت, jjafferr said:
' حساب عرض كل حقل
'For i = 1 To 74
'Me("fld" & i & "").Width = Me.Name1.Left / flCnt
'Me("LBL" & i & "").Width = Me.Name1.Left / flCnt
'Me("s" & i & "").Width = Me.Name1.Left / flCnt
'Next i

السلام عليكم استاذ جعفر 

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

عندما الغيت هذا الجزء اختلف التقرير فاذا تلاحظ عندما نجعل بعض القيم صفرا في عدد من الحقول فان التقرير يظهر فراغا كلما نقصت الحقول واعتقد السبب هو الغاء هذا الجزء من الكود حيث name1 i هو حقل موجود في جزء التفصيل ومكانه قرب حقل اسم المنفذ 

ارجو الاطلاع وعلاج ذلك ....مع فاق الاحترام والتقدير

قام بنشر
7 ساعات مضت, jjafferr said:

من القلب دعوة صادقة

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

احسنت اجابة موفقه 100% بارك الله فيك

قام بنشر
3 ساعات مضت, ابو رسول said:

احسنت اجابة موفقه 100% بارك الله فيك

الحمدلله 🙂

 

طريقة التخطيط والتنفيذ :

1. اجعل الحقل/مربع النص كاملا للرقم ، واحذف الهوامش الاضافية لجميع الحقول:

image.png.fcad67672e576dd89de245d16734b244.png

.

2. كان واضح ان المطلوب هو ان عرض مربع النص يجب ان يتماشى مع عدد الارقام فيه ، وعرض الارقام بالنسبة للارقام الانجليزية ثابت لجميع الارقام ،

وبعد تحليل النتيجة في الصورة ، كعدد ارقام ، وعرض مربع النص image.png.2669ff9b6f7f3a6e8c49b24e782659b7.png ، اتضح ان كل حرف محتاج الى 145.5 تويب Twip (وحدة قياس الاكسس) ، وبتقنين الرقم وبعد عدة تجارب توصلت الى الرقم 140 ، لذلك ، اذا استعملت خط Font آخر ، او الخط بحجم اكبر/اصغر ، فيجب عليك تغيير هذه القيمة ، بالتجارب 😁

اذن ، عرض كل حقل يحتاج الى معرفة عدد الارقام ف الحقل ضرب 140 ،

للحصول على هذا الرقم لكل حقل (هذه معادلتك) ، جعلنا القيمة في المتغير fld_value

image.png.fe0deefb6bb03397d88f3693de0ae707.png

عليه يصبح عرض كل مربع (وعلشان نعرف عدد الارقام في الحقل ، نستخدم الدالة Len ، ويجب تحويل الرقم الى نص CStr ، للحول على النتيجة الصحيحة للدالة) :

image.png.452327cd05feeb20e48515c982827e69.png

.

وفي آخر سطر من المعادلات اعلاه ، جمعنا محموع عرض هذه المربعات في المتغير width_Added ،

.

3. العرض المتوفر هو width_Avail : عرض التقرير - هامش اليمين لبكرة الطابعة  - هامش اليسار لبكرة الطابعة :

image.png.4d55b3ef081c059e03e3989fc6e5e6f6.png

image.png.af18f89865cb7b6764b19423859da239.png

.

4. اذن في عملنا اعلاه ، عرض جميع مربعات النص يكون صحيح ، ويحتوي على الرقم كاملا فيه ، بالعرض (الضيق) الذي يناسب الرقم ،

ولكنه لا علاقة له بالعرض الحقيقي الموجود في التقرير ، لذا ، سنلاحظ انه ترك مسافة فارغة زائدة عن حاجة المربعات ،

5. هنا قمت انت بحساب عدد الحقول التي سيتم عرضها في التقرير ، الحقول التي مجموعها اكبر من صفر ، وفي المتغير fICnt :

image.png.ea1ea0896fd0d83a14898a76bb2c23b4.png

.

6. المعادلة التالية تقوم باخذ عرض التقرير ، ناقصا مجموع عرص المربعات ، فيعطينا المسافة الفارغة الزائدة عن حاجة المربعات :

image.png.2309e2126a2cd1ad97284e713ef562ee.png

فنقوم بتوزيعها بالتساوي بعدد الحقول ، فيصبح نصيب كل مربع :

image.png.2e04a8bf1d4a8b06ec8faf33a73ff84e.png
.

7. اذن عرض المربع النهائي سيصبح:

عرض المربع الحقيقي (رقم#2 اعلاه) + القيمة المضافة / الاضافية (رقم #6 اعلاه)  :

image.png.e6f9b60d5be45cd4716c9bb669ca7de3.png

.

image.png.9c6c65c3e7fa56e7be4b81974d50f594.png

.

 

جعفر

  • Like 1
  • Thanks 3
قام بنشر
18 دقائق مضت, jjafferr said:

+ القيمة المضافة

يتضح ان القيمة المضافة مو بس الحكومات تستخدمها ، حتى فائدتها في الكود 😁

 

جعفر

قام بنشر
في ٨‏/٧‏/٢٠٢١ at 11:06, jjafferr said:

الحمدلله 🙂

 

طريقة التخطيط والتنفيذ :

1. اجعل الحقل/مربع النص كاملا للرقم ، واحذف الهوامش الاضافية لجميع الحقول:

image.png.fcad67672e576dd89de245d16734b244.png

.

2. كان واضح ان المطلوب هو ان عرض مربع النص يجب ان يتماشى مع عدد الارقام فيه ، وعرض الارقام بالنسبة للارقام الانجليزية ثابت لجميع الارقام ،

وبعد تحليل النتيجة في الصورة ، كعدد ارقام ، وعرض مربع النص image.png.2669ff9b6f7f3a6e8c49b24e782659b7.png ، اتضح ان كل حرف محتاج الى 145.5 تويب Twip (وحدة قياس الاكسس) ، وبتقنين الرقم وبعد عدة تجارب توصلت الى الرقم 140 ، لذلك ، اذا استعملت خط Font آخر ، او الخط بحجم اكبر/اصغر ، فيجب عليك تغيير هذه القيمة ، بالتجارب 😁

اذن ، عرض كل حقل يحتاج الى معرفة عدد الارقام ف الحقل ضرب 140 ،

للحصول على هذا الرقم لكل حقل (هذه معادلتك) ، جعلنا القيمة في المتغير fld_value

image.png.fe0deefb6bb03397d88f3693de0ae707.png

عليه يصبح عرض كل مربع (وعلشان نعرف عدد الارقام في الحقل ، نستخدم الدالة Len ، ويجب تحويل الرقم الى نص CStr ، للحول على النتيجة الصحيحة للدالة) :

image.png.452327cd05feeb20e48515c982827e69.png

.

وفي آخر سطر من المعادلات اعلاه ، جمعنا محموع عرض هذه المربعات في المتغير width_Added ،

.

3. العرض المتوفر هو width_Avail : عرض التقرير - هامش اليمين لبكرة الطابعة  - هامش اليسار لبكرة الطابعة :

image.png.4d55b3ef081c059e03e3989fc6e5e6f6.png

image.png.af18f89865cb7b6764b19423859da239.png

.

4. اذن في عملنا اعلاه ، عرض جميع مربعات النص يكون صحيح ، ويحتوي على الرقم كاملا فيه ، بالعرض (الضيق) الذي يناسب الرقم ،

ولكنه لا علاقة له بالعرض الحقيقي الموجود في التقرير ، لذا ، سنلاحظ انه ترك مسافة فارغة زائدة عن حاجة المربعات ،

5. هنا قمت انت بحساب عدد الحقول التي سيتم عرضها في التقرير ، الحقول التي مجموعها اكبر من صفر ، وفي المتغير fICnt :

image.png.ea1ea0896fd0d83a14898a76bb2c23b4.png

.

6. المعادلة التالية تقوم باخذ عرض التقرير ، ناقصا مجموع عرص المربعات ، فيعطينا المسافة الفارغة الزائدة عن حاجة المربعات :

image.png.2309e2126a2cd1ad97284e713ef562ee.png

فنقوم بتوزيعها بالتساوي بعدد الحقول ، فيصبح نصيب كل مربع :

image.png.2e04a8bf1d4a8b06ec8faf33a73ff84e.png
.

7. اذن عرض المربع النهائي سيصبح:

عرض المربع الحقيقي (رقم#2 اعلاه) + القيمة المضافة / الاضافية (رقم #6 اعلاه)  :

image.png.e6f9b60d5be45cd4716c9bb669ca7de3.png

.

image.png.9c6c65c3e7fa56e7be4b81974d50f594.png

.

 

جعفر

شكراااا جزيلااا على هذا المجهود اسأل الله ان يجعله في ميزان حسناتك ويجعلك تنعم بالصحة والعافية 

اقدر لك ذلك 

وطمعا بكرمك لدي طلب اخر

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

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

وهذا مرفق للتوضيح اكثر

وطلب اخر ان امكن وهو هل استطيع طباعة التقرير على ورقتين A3  بالتساوي لكل ورقة اقصد كل ورقة تحتوي على نصف عدد الحقول الظاهرة عند الطباعة لكي تتسع الحقول ونستطيع كبر حجم الخط اكثر؟

واسال الله لك التوفيق والنجاح

وهذا مرفق يوضح التقرير السنوي

1396.مطابقة موجودات2.rar

قام بنشر
في ٨‏/٧‏/٢٠٢١ at 10:06, jjafferr said:

الحمدلله 🙂

 

طريقة التخطيط والتنفيذ :

1. اجعل الحقل/مربع النص كاملا للرقم ، واحذف الهوامش الاضافية لجميع الحقول:

image.png.fcad67672e576dd89de245d16734b244.png

.

2. كان واضح ان المطلوب هو ان عرض مربع النص يجب ان يتماشى مع عدد الارقام فيه ، وعرض الارقام بالنسبة للارقام الانجليزية ثابت لجميع الارقام ،

وبعد تحليل النتيجة في الصورة ، كعدد ارقام ، وعرض مربع النص image.png.2669ff9b6f7f3a6e8c49b24e782659b7.png ، اتضح ان كل حرف محتاج الى 145.5 تويب Twip (وحدة قياس الاكسس) ، وبتقنين الرقم وبعد عدة تجارب توصلت الى الرقم 140 ، لذلك ، اذا استعملت خط Font آخر ، او الخط بحجم اكبر/اصغر ، فيجب عليك تغيير هذه القيمة ، بالتجارب 😁

اذن ، عرض كل حقل يحتاج الى معرفة عدد الارقام ف الحقل ضرب 140 ،

للحصول على هذا الرقم لكل حقل (هذه معادلتك) ، جعلنا القيمة في المتغير fld_value

image.png.fe0deefb6bb03397d88f3693de0ae707.png

عليه يصبح عرض كل مربع (وعلشان نعرف عدد الارقام في الحقل ، نستخدم الدالة Len ، ويجب تحويل الرقم الى نص CStr ، للحول على النتيجة الصحيحة للدالة) :

image.png.452327cd05feeb20e48515c982827e69.png

.

وفي آخر سطر من المعادلات اعلاه ، جمعنا محموع عرض هذه المربعات في المتغير width_Added ،

.

3. العرض المتوفر هو width_Avail : عرض التقرير - هامش اليمين لبكرة الطابعة  - هامش اليسار لبكرة الطابعة :

image.png.4d55b3ef081c059e03e3989fc6e5e6f6.png

image.png.af18f89865cb7b6764b19423859da239.png

.

4. اذن في عملنا اعلاه ، عرض جميع مربعات النص يكون صحيح ، ويحتوي على الرقم كاملا فيه ، بالعرض (الضيق) الذي يناسب الرقم ،

ولكنه لا علاقة له بالعرض الحقيقي الموجود في التقرير ، لذا ، سنلاحظ انه ترك مسافة فارغة زائدة عن حاجة المربعات ،

5. هنا قمت انت بحساب عدد الحقول التي سيتم عرضها في التقرير ، الحقول التي مجموعها اكبر من صفر ، وفي المتغير fICnt :

image.png.ea1ea0896fd0d83a14898a76bb2c23b4.png

.

6. المعادلة التالية تقوم باخذ عرض التقرير ، ناقصا مجموع عرص المربعات ، فيعطينا المسافة الفارغة الزائدة عن حاجة المربعات :

image.png.2309e2126a2cd1ad97284e713ef562ee.png

فنقوم بتوزيعها بالتساوي بعدد الحقول ، فيصبح نصيب كل مربع :

image.png.2e04a8bf1d4a8b06ec8faf33a73ff84e.png
.

7. اذن عرض المربع النهائي سيصبح:

عرض المربع الحقيقي (رقم#2 اعلاه) + القيمة المضافة / الاضافية (رقم #6 اعلاه)  :

image.png.e6f9b60d5be45cd4716c9bb669ca7de3.png

.

image.png.9c6c65c3e7fa56e7be4b81974d50f594.png

.

 

جعفر

ايه الابداع ده 

بجد الله يبارك فيك

قام بنشر (معدل)

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

شكرا لكم جميعا احبتي في الله

تم تعديل بواسطه Eng.Qassim
  • Like 2

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