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

نجوم المشاركات

  1. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      8

    • Posts

      1,681


  2. محمد أبوعبدالله

    • نقاط

      6

    • Posts

      1,998


  3. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      4

    • Posts

      9,814


  4. Eng.Qassim

    Eng.Qassim

    الخبراء


    • نقاط

      4

    • Posts

      2,302


Popular Content

Showing content with the highest reputation on 20 يول, 2021 in all areas

  1. سبحان الله ، هذا المنتدى يحتاج إلى محكمين من خارجه حتى لا يضيع الطلبة والمبتدئون. هذا مثال للدالة التي نصحت بها ودالة الدكتور ، أرجو لصقه ثم تشغيل الإجاراءين لمعرفة الفرق بين النتائج ووقت التنفيذ. كود في قمة الإتقان لم أرى شبيها له قبله ولن يأتي بعده ، واللي يحب يعترض يقابلني سنة 2500 ميلادي. Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function Function WkDayCount(VarDate As Date, enddate As Date) As Long 'دالة د. كاف يار Dim SFriday As Long Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If Loop WkDayCount = SFriday End Function Sub Test1() Dim Date1 As Date Dim Date2 As Date Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(2021, 7, 30) Debug.Print CountWkDay(Date1, Date2, vbFriday) Debug.Print WkDayCount(Date1, Date2) End Sub Sub Test2() Dim Date1 As Date Dim Date2 As Date Dim Start As Single Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(9000, 7, 25) Start = Timer Debug.Print CountWkDay(Date1, Date2, vbFriday), Timer - Start Start = Timer Debug.Print WkDayCount(Date1, Date2), Timer - Start End Sub
    2 points
  2. نعم يوجد برامج كثيرة علماً انه لا يسمح بتداول مثل هذه البرامج في المنتدى والافضل تحويلها الى accde وبهذه الطريقة لا يمكن عرض الاكواد نهائياً تحياتي
    2 points
  3. فكرة ::::: يمكن تنفيذ فكرة @Eng.Qassim بحيث تجعل اعدادات لبرنامجك في نموذج لايمكن الدخول اليه الا من مدير النظام فقط وتعطيها صلاحية خاصة
    1 point
  4. الصق الجملة التالية في نهاية الكود و هي تعمل على تحديث الصفحة DoCmd.Requery نفس الاجابة اعلاه هذا كود فقط للإضافة كتبته لكي تقرأه و تحاول فهمه لا اكثر
    1 point
  5. انظر للنموذج الذي ارفقته .. وهذه النتيجة
    1 point
  6. هذا مثال لسؤالك بأستخدام استعلام .. يعطيك كم عدد ايام الجمعة وكم عدد ايام السبت .. والايام المتبقية بعد طرح الفرق بين التاريخين واستخراج ايام الجمعة والسبت ... وتستطيع انت التحكم فيهما كما شأت date diff.accdb
    1 point
  7. لأن التعديل كان بعد اضافة البيانات دعنا نفكر سويا لماذا لم يتم تحديث البيانات رغم انك قمت بتعديل القيمة الإفتراضية للحقل؟؟ السبب لأن القيمة الإفتراضية توضع عند الإدخال الجديد فقط هذا بإختصار شديد جدا اذا البيانات السابقة يجب ان تحدث قم بإنشاء استعلام تحديث و هنا تكون المشكلة انتهت . نعم صحيح و بما انك قد سألت هذا السؤال اذا فقد بدءت في اول طريق صناعة الكود و مع الاستمرار بالإعتماد على مجهودك سوف تجد ان الموضوع بسيط من الخطأ ان تأخذ السمك و لا تتعلم اصطيادها و بما انك بدءت تقرأ الكود و تفكك اجزائه دعنا نجرب كود الإضافة و عليك ان تبدء بتجربته و ثم كود التحديث اذا هنا بدئنا ننتقل من عملية الاستعلام الجاهزة في الاكسس الى الأكود و العمل الاحترافي Dim db As DAO.Database Dim rs As DAO.Recordset ' فقط تضع اسم الجدول هنا Set rs = CurrentDb.OpenRecordset("table_name") ' هنا تقوم بوضع اسماء الأعماد و الحقول كما هو موضح ادناه rs.AddNew rs.Fields("Column_Name1") = [TextBpox1] rs.Fields("Column_Name2") = [TextBpox2] rs.Fields("Column_Name3") = [TextBpox3] rs.Update rs.Close Set rs = Nothing
    1 point
  8. جرب هذا الماكرو لا تنسى بانشاء مجلد backup في درايف c Sub savefile() Dim Path As String Dim Filename As String Path = "C:\backup\" Filename = Range("B3") ThisWorkbook.Sheets.Copy Application.DisplayAlerts = False ActiveWorkbook.SaveAs Filename:=Path & Filename & ".xlsx", FileFormat:=51 Application.DisplayAlerts = True ActiveWorkbook.Close True End Sub
    1 point
  9. السلام عليكم جرب الكود التالي Fri_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days Project2.accdb تحياتي
    1 point
  10. لا تظن ما ليس بي فلم أرد ولم أتحدث بسبب كلمة ( كما تريد ) لأنك قبل كل ذلك معلمي واستاذي وأقدرك واحترمك قبل كل شيء فالعين لا تعلى على الحاجب أما فهم المعنى فيختلف من إنسان إلى إنسان فعلماؤنا اختلفوا في كثير من الأمور كل حسب فهمه ألا نختلف انا وانت في فهم المقصد وأعتذر منك ومن الجميع لدخولنا في موضوع آخر
    1 point
  11. 1 point
  12. وعليكم السلام ورحمة الله وبركاته تكون قاعدة البيانات الاصلية في اكسيس 2007 وما فوق بصيغة accdb وبعد الانتهاء من البرنامج وقبل تسليمه للعميل يتم تحويل قاعدة البيانات الى accde اما accdr فهو عبارة عن اعادة تسمية امتداد الملف ولا تؤثر على عمله مطلقاً ولكن صيغة accdb و accde يمكن تعطيل الشيفت ورؤية الجداول بعكس accdr فهو يعتبر Runtime لذلك يتم اعادة تسمية امتداد الملف لمزيد من الحماية من عرض عناصر قاعدة البيانات وهذه الطريقة يمكن التغلب عليها ببساطة باعادة التسمية مرة اخرى تحياتي
    1 point
  13. يامرحبا باخي واستاذي الفاضل @مسفر كل عام وانتم بخير الاستفهام له انواع متعددة اشهرها سبعة انواع وهناك من يرى انها اكثر من ذلك فعدها عشرا وبعضهم اكثر ندخل في لب الموضوع وايضا يقاس عليها السؤال وهنا نتعجب من استخدام الاكواد برغم معرفتنا بامكانية عمل ذلك بالنماذج العادية وايضا لو صرحت و قلت اتعجب ان نلجأ الى الاكواد والسكوال لاضافة بيانات الى الجدول طالما ان اكسس وفرت علينا ذلك المجهود بالحقول المنظمة لما تغير المعنى ولو استخدمنا كلمة استغرب ان نلجأ للاكواد الخ ايضا لم يتغير المعنى واستغرب مرادفة لاتعجب او قلنا كيف نلجأ الى الاكواد و .... الخ لن يتغيير المعنى الخلاصة ان نوع الاستفهام يعرف بفهم المعنى وسياق الكلام ودلائل اخرى كالنهي والتهكم والوعيد والحض والاستبطاء والتحقير .... الخ ولا يشترط في استفهام التعجب وجود فعل في سياق الحديث فيمكن ترك الامر على ايهامه للتحقير والتعجب و من ذلك قوله تعالى " وَأَصْحَابُ الشِّمَالِ مَا أَصْحَابُ الشِّمَالِ " وقوله تعالى " وأصحاب المشأمة ما أصحاب المشأمة " او ان يترك على ايهامه للتفخيم والتعجب من حسن المآل كقوله تعالى " وَأَصْحَابُ الْيَمِينِ مَا أَصْحَابُ الْيَمِينِ " واما الاستفهام الانكاري له اغراضه ومن اشهرها التكذيب او التوبيخ على امر مضى او مستمر وهناك من يشترط لهذا النوع من الاستفهام ان يبدأ بهمزة الاستفهام فائدة التعجب في العربية له صيغتان سماعي ليس له وزن او قاعدة محددة ويفهم من سياق المعنى ويندرج تحت هذا النوع الاستفهام التعجبي قياسي وله صيغتان ما افعله وافعل به ويصاغ من اي فعل ثلاثي تام مثبت قابل للتفاوت منصرف مبني للمعلوم لايأتي وصف مؤنثه على وزن فعلاء فان توفر فيه شرطي التفاوت والتصرف ولم يتوفر فيه احد الشروط الاخرى يتعجب منه بغيره اما اذا لم يتوفر فيه احد الشرطين التفاوت او التصرف فلا يتعحب منه مطلقا هذا ما اعلمه فإِن أحسنت فمن الله، وإِن أسأت أو أخطأت فمن نفسي والشيطان والله تعالى اعلم في ردي السابق القصد منه ان رأيك وفقا لفهم السؤال وليس الهدف التجاوز على اخ عزيز و معلم قدير له كل الاحترام والتقدير وان اختلفنا في الرأي اخيرا اعتذر من صاحب الموضوع والقائمين على الموقع عن الاطالة و الخروج عن الموضوع الاساسي للمشاركة
    1 point
  14. تفضل جميع العناصر تبدء من الأعلا و ليس من الأسفل اي ماهي المسافة التي تريدها من رأس النموذج الى الأسفل (1) سم مثلا [TextBox].Top = 1000 تفضل هذا المثال test.accdb
    1 point
  15. وعليكم السلام 🙂 على افتراض ان اسماء الحقول صحيحة في الكود ، يوجد خطأ واحد في كل معادلة : يجب إضافة مسافة بين الاشارة " وكلمة and ، في المعادلتين : . هكذا : 'حساب عدد ايام الجمعة ضمن الاجازة الرسمية بين التاريخين Fri_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days واذا ما حصلت على نتيجة ، فيمكن يجب ان نرى ما يراه البرنامج في صيغة التاريخ ، وعليه قد نحتاج الى استعمال الدالة fDateFormat : جعفر
    1 point
  16. تفضل هذه الطريقة من خلال حلقة تكرارية داخل نطاق تاريخين محددين Dim VarDate As Date Dim enddate As Date Dim SFriday, SSaturday As Integer -===================================== VarDate = #1/1/2022# enddate = #1/31/2022# -===================================== Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If If Weekday(VarDate, 2) = vbSaturday Then SSaturday = SSaturday + 1 End If Loop Dim msg As String msg = "عدد ايام (الجمعة) حسب التواريخ المدخلة" msg = (msg) & " : " & SFriday msg = (msg) & (vbNewLine) & "عدد ايام (السبت) حسب التواريخ المدخلة" msg = (msg) & " : " & SSaturday MsgBox msg, vbInformation + vbMsgBoxRight, "احتساب الأيام المحددة"
    1 point
  17. 1 point
  18. نعم اخي الكريم الكود الصحيح يكون DSum("[Days]", "tblVacation", "[EmpCode]=" & Me.CbEmpNo) تحياتي
    1 point
  19. اتفضل يابوالحسن خذ نفس الكود في صفحة الادخال و ضيفه للصفحة 5555DATA14.zip
    1 point
  20. اتفضلوا البرنامج العملاء_والديون_اقساط_0777134668.accdb
    1 point
  21. اتفضل التعديل يابو الحسن 33DATA14.zip
    1 point
  22. الأستاذ الكريم أ / محمد صالح جزاك الله خيرا وأحسن إليك. عيدكم مبارك سعيد
    1 point
  23. الصواب في الفرز على الصف 11 ولكن المشكلة الحقيقية في تنفيذ الفرز في ملفك هو دمج الخلايا في العناوين فأصبحت الخلايا b11 , c11, d11, j11, k11 فارغة مما يجعل عملية الفرز غير دقيقة ولذا أضفت كود فك الدمج لهذه الخلايا قبل كود الفرز Sub insertformula3() Application.ScreenUpdating = 0 Dim strfile As String, col As String, col1 As String, objBook As Workbook, lr As Long, c As Integer strfile = Dir(ThisWorkbook.Path & "\*.xlsx", vbNormal) While strfile <> "" Set objBook = Workbooks.Open(ThisWorkbook.Path & "\" & strfile) c = objBook.Sheets("data").Range("b10").CurrentRegion.Columns.Count col = IIf(c = 10, "j", "l") col1 = IIf(c = 10, "k", "m") lr = objBook.Sheets("data").Range(col & Rows.Count).End(xlUp).Row objBook.Sheets("data").Range(col1 & "12").Formula = "=IF(Or(" & col & "12<5," & col & "12=""ن.م.ر""),""يكرر"",""ينتقل"")" objBook.Sheets("data").Range(col1 & "12").AutoFill Destination:=objBook.Sheets("data").Range(col1 & "12:" & col1 & lr) If objBook.Sheets("data").AutoFilterMode Then Selection.AutoFilter objBook.Sheets("data").Range("b10:b11").UnMerge objBook.Sheets("data").Range("b11").Value = "رقم التلميذ" objBook.Sheets("data").Range("b10").ClearContents objBook.Sheets("data").Range("c10:c11").UnMerge objBook.Sheets("data").Range("c11").Value = "الاسم والنسب" objBook.Sheets("data").Range("c10").ClearContents objBook.Sheets("data").Range("d10:d11").UnMerge objBook.Sheets("data").Range("d11").Value = "النوع" objBook.Sheets("data").Range("d10").ClearContents objBook.Sheets("data").Range(col & "10:" & col & "11").UnMerge objBook.Sheets("data").Range(col & "11").Value = "المعدل العام" objBook.Sheets("data").Range(col & "10").ClearContents objBook.Sheets("data").Range(col1 & "10:" & col1 & "11").UnMerge objBook.Sheets("data").Range(col1 & "11").Value = "قرار المجلس" objBook.Sheets("data").Range(col1 & "10").ClearContents objBook.Sheets("data").Rows("11:11").AutoFilter objBook.Sheets("Data").AutoFilter.Sort.SortFields.Clear objBook.Sheets("Data").AutoFilter.Sort.SortFields.Add2 Key:=Range(IIf(c = 10, "j11", "l11")), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal With objBook.Sheets("Data").AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With objBook.Sheets("data").Range("b12").Select objBook.Close 1 strfile = Dir() Wend Application.ScreenUpdating = 1 MsgBox "هشام:تمت عملية إضافة القرار" End Sub عيدكم مبارك
    1 point
  24. 1 point
  25. وعليكم السلام ورحمة الله وبركاته وانت بخير وجميع الامة الاسلامية جرب التعديل التالي total = DSum("[Days]", tblVacation, "[EmpCode]="& CbEmpNo) تحياتي
    1 point
  26. اصل السؤال ، والاستفسار عن الامر RunSQL فيه ، لا يعطينا انطباع على انه لا يوجد جداول مربوطة ، وعليه كان جوابي 🙂 جعفر
    1 point
  27. نعم هناك فرق من ناحية اسلوب الإدخال و التعامل دعنا نتحدث بالأمثلة طلما ان تريد معرفة الإسلوب في البداية كلغة استعلام SQL فلن يتغيير بها شي هي نفسها سواء استخدمت الطرق التي ذكرتها ففي الخيار الأول سوف تقوم من ناحية اضافة البيانات الى الجدول بكتابة الكود بالطريقة التالية DoCmd.RunSQL "INSERT INTO table_name " & _ "(column1, column2,...)" & _ "VALUES (value1, value2,....)" هذا الإسلوب في الإدخال مجهد نوعا ما لأن مضطر لجعل القيم بجانب بعضها و عند الرغبة في التعديل سوف تجد نفسك مضطر لقرآة العبارة كاملة او ان تكون نظرة اكثرة دقة هذه مثلها مثل هذه العبارة Dim db As Database Dim sSQL As String Set db = CurrentDb sSQL = "INSERT INTO table_name " & _ "(column1, column2,...)" & _ "VALUES (value1, value2,....)" db.Execute sSQL الفرق بأن الأولى ستجد نفسك بحاجة الى تعطيل رسائل النظام المزعجة اما في هذه فلن تكون هنالك رسائل نظام مزجعة و لكن يبقى التعامل معها كما في السابق ما يمييز المبرمج المحترف ليس في طول الأكواد و كثرتها فكلما كان الكود مختصر سوف تجد سهولة في التعديل عليه مستقبلا و يكون اكثر مرونة لذا و من وجهة نظهر بأن تستخدم المصفوفات الطريقة المثلى التي قدمتها ما يكروسوفت فهي الأسرع و الأرتب جلب البيانات Dim db As DAO.Database Dim rs As DAO.Recordset ' جلب سطر او سطور حسب المطلوب افضل و اسرع Set rs = CurrentDb.OpenRecordset("SELECT * FROM table_name WHERE column_name = some_value") If Not rs.BOF Then rs.MoveFirst While (Not rs.EOF) [TextBox1] = rs.Fields(0) [TextBox2] = rs.Fields(1) rs.MoveNext Wend End If rs.Close Set rs = Nothing ======================================================================== اضافة البيانات Dim db As DAO.Database Dim rs As DAO.Recordset Set rs = CurrentDb.OpenRecordset("table_name") rs.AddNew rs.Fields(0) = [TextBox1] rs.Fields(1) = [TextBox2] rs.Fields(2) = [TextBox3] rs.Update rs.Close Set rs = Nothing ======================================================================== تعديل البيانات Dim db As DAO.Database Dim rs As DAO.Recordset Set rs = CurrentDb.OpenRecordset("SELECT * FROM table_name WHERE column_name = some_value") rs.Edit rs.Fields(0) = [TextBox1] rs.Fields(1) = [TextBox2] rs.Fields(2) = [TextBox3] rs.Update rs.Close Set rs = Nothing بالنسبة لهذه النقطة فالخيار الثاني هو الافضل لك بلا منازع و دائما تجب الاتصال المستمر بقاعدة البيانت اتصال يكون عند الحاجة فقط ( اضافة \ حذف \ تحديث \ استدعاء سطور محددة حسب الحاجة )
    1 point
  28. @jjafferrاستاذ مسفر لغتنا العربية جميلة فلا بأس من الغوص بجمالها لثواني ونحن نغوص بجمال ابداع استاذ جعفر
    1 point
  29. الملف لايفتح عندي الاوفس 2007 هل هو السبب
    1 point
  30. اشوفك تتسرّع في تعليقاتك !! ولو تغيّر التعليق الى سؤال ، فبتحصل على اجابات افضل 🙂 الهدف الاكبر من هذا الموضوع هو ، حماية البيانات : 1. اذا البيانات على السيرفر ، والاكسس متصل بجداوله في السيرفر ، فالرابط يكون مستمر بين الواجهة والجداول ، والشاطر يقدر يستعمل احد برامج "الشم" Sniffing والتوصل الى ما يشاء ، 2. بينما اتصالك بالكود للسيرفر وجلب البيانات ، ثم انقطاع الاتصال بالسيرفر ، يجعل الموضوع ذو امان اكثر 🙂 وللعلم ، فهناك العديد من الجهات التي تهتم بأمن البيانات ، تصر على ان تكون جميع كائناتها غير منضمه 🙂 جعفر
    1 point
  31. شكرا استاذ @عبد اللطيف سلوم على البرنامج ..لكن حين ادخال الدفعات الشهرية يظهر المجموع في حقل الاقساط والرصيد يبقى على حاله لايتغير وكذلك كشف الحساب لايظهر فيه الدفوعات ولا المتبقي...كذلك ان العميل اذا عنده اكثر من قائمة فلايظهر الاجمالي في كشف الحساب تحياتي لك
    1 point
  32. حسب فهمي للمطلوب يمكنك استعمال هذا الكود Private Sub CommandButton5_Click() If ActiveSheet.Name <> "data" Then Dim wslr As Integer, counter As Integer, ws As Worksheet Set ws = ThisWorkbook.Worksheets("data") wslr = ws.Cells(Rows.Count, 1).End(xlUp).Row For counter = 1 To wslr If ws.Cells(counter, 2) = TextBox1.Value Then ws.Cells(counter, 2).EntireRow.Delete counter = counter - 1 End If Next MsgBox "تم حذف الاسم" End If End Sub
    1 point
  33. و عليكم السلام و رحمة الله و بركاته تقبل الله من الجميع =INDEX(D3:M3;;MATCH(MAX(D5:M5);D5:M5;0)) اعلى-ادنى.xlsx
    1 point
  34. تفضل 🙂 افتح التقرير rpt_Vertically_center_Fields الدالة التي تقوم بالعمل ، وعملت لها وحدة نمطية مستقلة ، حتى يمكننا الاستفادة منها لأكثر من تقرير: Public Sub VerticalAlignCenter(ByRef ctl As Control) ' 'From: https://www.vbforums.com/showthread.php?505561-VB-VBA-Set-TextBox-and-Label-text-to-Vertically-Align-Center&p=3675142&viewfull=1#post3675142 ' 'Sets the vertical alignment of a label or textbox to "Center" 'NOTE: 'MinimumMargin: the value of the smallest margin Access allows in twips. If you set the .TopMargin 'to "0", Access will actually place a gap equal to 1 point (or 20 twips) rather than actually 'placing the text at the very top border of the control. FURTHER NOTE: Access sucks. ' 'BorderWidth: half the value of .BorderWidth in twips. As you increase the border (Hairline, 1pt, 2pt, etc..) 'Access expands the border equally from the center. We're only concerned with the "inner" section of the border. ' 'TwipsPerPoint: global constant set to 20 On Error GoTo ErrorCode Dim MinimumMargin As Integer Dim BorderWidth As Integer Dim TwipsPerPoint TwipsPerPoint = 20 If Not ((TypeOf ctl Is TextBox) Or (TypeOf ctl Is Label)) Then Exit Sub 'Figure out how many lines it is Dim LenOfText, WidOfBox, NumberOfLines, HtOfText If TypeOf ctl Is TextBox Then LenOfText = ctl.Text Else: LenOfText = ctl.Caption End If 'how wide is this puppy? WidOfBox = ctl.Width LenOfText = (Len(LenOfText) * TwipsPerPoint * ctl.FontSize) / 2 NumberOfLines = Int(LenOfText / WidOfBox) + 1 HtOfText = NumberOfLines * TwipsPerPoint * ctl.FontSize MinimumMargin = 1 * TwipsPerPoint BorderWidth = (ctl.BorderWidth * TwipsPerPoint) / 2 ctl.TopMargin = ((ctl.Height - HtOfText) / 2) - MinimumMargin - BorderWidth ErrorCode: Exit Sub End Sub . ثم في التقرير ، انقر على فاصل قسم التفصيل Detail ، وفي حدث "عند الطباعة" (ولن يعمل يأي حدث آخر ، فهو آخر حدث قبل الطباعة ، بينما للاحداث الاخرى يكون فات الاوان لهذا العمل) ، ننادي الدالة اعلاه بإسم الكائن الذي نريد توسيطه : Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) VerticalAlignCenter Me.save VerticalAlignCenter Me.a1 End Sub . والنتيجة : . كما يوجد مثال عند ملك دوال الاكسس الثقيلة المتقاعد في : http://www.lebans.com http://www.lebans.com/DownloadFiles/A2KVerticalJustify.zip جعفر 1293.1.Report_Draw_BoxLine.accdb.zip
    1 point
  35. هذا طلب من أخ غالى علية جدا فى هذا الصرح وأتمنى أن يكون المطلوب قائمة بدون فراغات والقائمة عبارة عن صف.rar
    1 point
  36. أستاذنا الفاضل ملك المعادلات / جمال عبد السميع السلام عليكم ورحمة الله وبركاته حمد لله على السلامة. فكرة رائعة جداً جزاك الله خيراً أستاذنا ونفتقد لمساتك البارعة منذ فترة.زادك الله من فضله وعلمه ومتعك اللهم بالصحة والعافية ونر الله طريقك في الدنيا والآخرة. أمين يا رب العالمين.
    1 point
  37. الاخوة الكرام اليكم ملف ورد تم نسخ بياناته من موقع الدعم لميكروسوفت وتم تجهيزه لمن يرغب فى التعلم كيف يتعامل مع الخلية فى الماكرو ولا تنسونا من صالح الدعاء وارجو من الاساتذه الكبار عمالقة المنتدى ان يزودونا بافكارهم حيث ان الملف لا يحتوى كل المعلومات وذلك من خلال تعاملى مع اعمال الاعضاء كيفية تحديد الخلايا.rar
    1 point
  38. اخى واستاذى العزيز ان كان البرنامج بعيدا عن المنتدى ولكن لك شرح فيديو للبرنامج بعد اذن اساتذتى فى المنتدى تحياتى
    1 point
×
×
  • اضف...

Important Information