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

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

  1. AbuuAhmed

    AbuuAhmed

    الخبراء


    • نقاط

      6

    • Posts

      976


  2. kkhalifa1960

    kkhalifa1960

    الخبراء


    • نقاط

      4

    • Posts

      1,688


  3. حسونة حسين

    حسونة حسين

    أوفيسنا


    • نقاط

      3

    • Posts

      1,047


  4. بن علية حاجي

    بن علية حاجي

    الخبراء


    • نقاط

      3

    • Posts

      4,342


Popular Content

Showing content with the highest reputation on 12 ينا, 2023 in all areas

  1. اعتقد ولا أجزم بأن هذه الجزئية تمت اضافتها من قبل موقع الاستضافة مؤخراً لتخفيف الضغط على السيرفر تخيل ان كل شخص يفتح الاتصال مع قاعدة البيانات ويترك الاتصال مفتوح بدون العمل كم مقدار الضغط الذي سيتعرض له السيرفر لذلك وضعوا هذه البرمجية لفصل الاتصال أعيد وأكرر لا أجزم بهذا الكلام بعد مشاهدة رابط الموضوع اللي وضعه استاذنا ابو خليل صار عندي تصور عن المطلوب سؤالك هذا غير مجرى الموضوع 180 درجة سأعطيك رايي كمستخدم لمواقع الاستضافة لقواعد بيانات SQl Server لمدة 6 اشهر 1 - طريقة ربط الاكسس مع جداول قواعد بيانات Sql server عن طريق ODBC أو ما يعرف بالاتصال المتصل بحيث يتم انزال نسخه مرتبطه من الجداول في قاعدة بيانات الاكسس وعند فتح الجدول يبقى الاتصال مفتوح دون انقطاع هذه الطريقة غير مجديه فعند وصولك لعدد 500 سجل ومحاولة عمل استعلام فرز وعمليات حسابية او جلب بيانات مرتبطه ستكون هذه المعالجة للبيانات بطيئة جدا جدا اضف الى ذلك عند فتح الاستعلام من خلال نموذج وعمل بعض الاوامر البرمجية ستصاب بالملل لأن جلب البيانات للنموذج في حالة كان لديك عدد السجلات المذكورة سيأخذ منك وقت لايقل عن 3 دقائق كحد أدنى ربما يخطر لك سؤال هنا وتقول ان هذا بسبب موقع الاستضافة بناء على المساحة التي قمت بشرائها والسرعه ...... ألخ سأجيب واقول لك جربت اكثر من موقع ومن ضمنها مساحه على Azure وهذا من أفضل المواقع للاستضافة إن لم يكن أقواها على الاطلاق بناءً على نوع الاشتراك عند تجربته تحسن الاتصال نوعا ما وكان الأمر شبه مقبول ولكن قيمة الاشتراك في هذه السيرفرات مكلف جدا طبعا الأمر يختلف تماما عند عمل سيرفر على جهازك او من خلال شبكه داخلية ستجد الأوامر سريعه جدا بناء على مواصفات الجهاز نأتي للأمر الأخر 2- الاتصال بقواعد بيانات Sql Server في مواقع الاستضافة بتقنية Dbset أو ما يعرف بالاتصال المنفصل ان شاء الله يكون المصطلح صحيح بحيث تقوم بتعريف الاتصال والمتغيرات وتكتب جمل الاتصال بالجدول او stored procedure أو الاستعلام تفتح الاتصال وتجلب او ترسل البيانات ثم تقوم بإغلاق الاتصال بدون أن يكون عندك جداول حيث يتم تخزين البيانات في الذاكرة وتقوم باستعراضها عن طريق النموذج او تقوم بالاضافة او التعديل والحذف ثم تعيد ارسالها الى قاعدة البيانات مباشرة للجدول او عن طريق stored procedure هذه الطريقة مشابه بحد كبير الى طريقة برامج visual basic هذه الطريقة جدا ممتازة وسريعه جدا إذا كان بناء البرنامج صحيح وكل شي تمام ولكن تحتاج جهد وعمل كبير وكثير يعاب على هذه الطريقة عدم استطاعتك بناء بعض التقارير عن طريقها حيث ستحتاج الى تصميم جداول مؤقته ثم تجلب البيانات وتخزنها بالجدول وبعد ذلك تستطيع بناء التقرير وهذا هو موضوع كود الاتصال الذي وضعته لك أتمنى أكون قدرت افيدك بشي عن الموضوع
    2 points
  2. السلام عليكم محاولة أخرى بكود في الشيت "Feuil1" (بتحفظ)... مع الحل (بالمعادلات) السابق في شيت "Sheet1"... برمجة حساب راتب2.xlsm
    2 points
  3. تفضل أخي العزيز 🙂 عدلت لك الدالة بحيث أنك تعطيها تاريخ البداية وتاريخ النهاية ورقم الأسبوع لكل مربع نص .. والدالة ترجع قيمة رقمية 0 و 1 ... الصفر يعني أن هذا الأسبوع ليس من ضمن نطاق الإجازة ، والواحد من ضمن نطاق الإجازة .. وبعدها بالتنسيق الشرطي تلون المربعات التي بها 1 .. ويمكنك إخفاء الأرقام بتلوينها نفس مربعات النص 🙂 وهذه هي الدالة : Public Function IsWeekIn(StartDate As Date, Enddate As Date, ThisIsWeekNumber As Integer) As Integer 'هذه الدالة تقوم بكتابة 1 في الأسابيع الواقعة بين تاريخين و 0 للتي ليست ضمن نطاق التواريخ المعطاه Dim WeekNumberForStartDate As Integer Dim WeekNumberForEndDate As Integer ' Assigning Week numbers for start and end days WeekNumberForStartDate = DatePart("ww", StartDate) WeekNumberForEndDate = DatePart("ww", Enddate) If ThisIsWeekNumber >= WeekNumberForStartDate And ThisIsWeekNumber <= WeekNumberForEndDate Then IsWeekIn = 1 Else IsWeekIn = 0 End If End Function وتكتبها كمصدر بيانات مربعات الأسبوع هكذا : =IsWeekIn([Strdate];[Enddate];1) لاحظ الرقم الأخير 1 هذا سيتغير لكل مربع من مربعات الأسابيع حسب رقم الأسبوع ( من 1 إلى 54 ) f6-Moosak.rar
    2 points
  4. يحتاج الباحث كثيرا إلى ترقيم ملف بالكامل، كترقيم الكتب والأبواب والأحاديث، ويحتاج إلى عمل مسلسل لكل جزئية، لذا يجب أن يضع رمزًا للكتب، وآخر للأبواب، وآخر للحديث، ثم يختار الرمز الذي يرقم عليه، ليكون للكتب ترقيم مسلسل، وللأبواب والأحاديث كذلك، وهذا هو الماكرو: On Error GoTo 5 ss = InputBox("اكتب الرمز المطلوب الترقيم بدلالته، مثل: = أو * أو # أو @") For i = 1 To 100000 Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = ss .Replacement.Text = " :" .Forward = True .Wrap = wdFindStop .Format = False .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Selection.Copy Selection.MoveLeft Unit:=wdCharacter, Count:=1 Selection.TypeText Text:=i Selection.MoveRight Unit:=wdCharacter, Count:=1 Next i 5: End Beep End Sub
    1 point
  5. مشاركة مع استاذنا @jjafferr لاسباب متعددة منها لا يمكن أن تتضمن العملية الحسابية حقولا من جداول أو استعلامات أخرى نتائج العملية الحسابية للقراءة فقط، ولكنها قابلة للاستخدام كقيم في حقول محسوبة أخرى يتم إجراء العملية الحسابية في كل مرة تقوم فيها بإضافة بيانات أو تغييرها هذا النوع من الحقول تم اضافته من اصدار 2007 ولا اعلم عن توافقه مع اصدارات اقدم هنا نقاش سابق مع الاستاذ @Moosak تحياتي
    1 point
  6. وعليكم السلام 🙂 خليني أسأل سؤال كلنا متفقين عليه: ما فائدة وجود حقل المرفقات في الجدول ، ما دام استخدامه وادخال الصور فيه يجعل حجم البرنامج يكبر كثيرا وقد يصل الى حجمه النهائي 2 جيجا ويتوقف البرنامج عن العمل!! والجواب: الاكسس يستعمله الهاوي والمحترف ، وكلٌ له طريقة في استعماله ، وميزة الاكسس انه بإمكانك عمل اي شيء تريد بعدة طرق ، فكما ان المحترف لا يستخدم حقل المرفقات 99% من الوقت ، ولكن قد يستعمله لإرفاق بعض الصور الصغيرة مثل شعار المؤسسة او إحمل برامجك داخل قاعدة بياناتك فمو واجب استعمال جميع الميزات اللي يعطينا البرنامج ، ولكن نستخدم اللي يناسبنا كهاوين او مبتدئين 🙂 جعفر
    1 point
  7. ازل علامه الصح في هذه الصورة وان شاء الله تظبط معاك
    1 point
  8. شكرآ اخي الله يبارك فيك @kkhalifa1960 شكرآ اخي @Moosak بارك الله فيك كان نفس يكون أفضل اجابه للاثنين بصراحه متشكر جدا لكم الله يسعدكم
    1 point
  9. تفضل أخي توحيد فورمات الوقت لجميع حقول الوقت بالجدول ... وتغديل معادلة الوقت الاضافي وانظر للمرفق جيداً ووافني بالرد Database 04.rar
    1 point
  10. هذا مثال للتقويم الهجري وام القرى والميلادي لمشرفنا القديم أبو هادي أكيد بينفعك NewCalendar.rar
    1 point
  11. السلام عليكم محاولة في الملف المرفق كحل أول (طريقتين بالمعادلات) وإن شاء الله أفكر في طريقة بالأكواد... برمجة حساب راتب.xlsx
    1 point
  12. وعليكم السلام ورحمة الله وبركاته حل مشكله اللغه العربيه
    1 point
  13. استكمالا لما قام به استاذنا موسى تفضل f6-1.rar
    1 point
  14. يمكنك الكتابة في الخلايا من A إلى D وما يهمك. وكلم مديرك يوظفني 🙂 برمجة حساب راتب_03.xlsm
    1 point
  15. هذا البرنامج من عمل استاذنا العلامة الفهامة الاستاذ حسونه حسين حفظه الله ورعاه وبارك الله في عمره وعمر والده وأولاده وأهل بيته اجمعين اللهم آمين برنامج الأرقام السرية للأستاذ حسونة الاصدار 1.xlsb
    1 point
  16. بارك الله فيك اخى @علي بطيخ سالم ابو عبدالرحمن وجزاكم الله خيرا على دعاؤكم الطيب
    1 point
  17. واشارك مع استاري جعفر وتفضل كمان Calendar Month View.rar واشارك مع استاري جعفر وتفضل كمان
    1 point
  18. وعليكم السلام 🙂 بما انه يوجد في برنامجك ، فتستطيع الاستفادة منه 🙂 او تستطيع انزال هذا البرنامج: http://lebans.com/DownloadFiles/A2KMonthCalenderVer205.zip والشرح هنا: http://lebans.com/monthcalendar.htm انزل المرفق ، افتح البرنامج ، افتح النموذج ، ثم انقر نقر مزدوج على حقل التاريخ ، وسترى روزنامة التاريخ 🙂 جعفر تم انزال المرفق واضافته هنا A2KMonthCalenderVer205 (2).zip
    1 point
  19. السلام عليكم ورحمة الله وبركاته اساتذتى الكرام ،، تحية طيبة عطرة من باب الطمع فى تحصيل العلم إن قدر الله الخير وسمح لى وقتكم وجهدكم الثمينين اتمنى على الله تعالى ثم عليكم ان تتفضلوا بطرح أفكاركم النيرة وتنيروا ظلمات الجهل لى ولكل طلاب العلم جزاكم الله خيرا السؤال كان لاخت لنا فى المنتدى وتم الإجابة عليه وأعجبتنى الفكرة الى ان توسعت فتعثرت اولا الموضوع الأصلى ارفق لكم قاعدة جديدة والتى تحمل تساؤلاتى المرفق الجديد يعتمد فى عمله على العناصر الثلاث الاتيه جدول tblRegVacation >>---> جدول يتم فيه تسجيل اول تاريخ بدء الأجازة ,اخر تاريخ لنهاية الأجازة , وطبعا كود الموظف qrySysSourc >>---> استعلام سحرى يعتمد على جدول من جداول النظام وهذا اول تساؤلاتى أريد فهمه وفيما يمكن الاستفادة منه أكثر qryVacationsDetailed >>---> استعلام يعتمد على الاستعلام السابق والجدول يسجل التاريخ متسلسلا ومفصلا بناء على أول تاريخ وأخر تاريخ المطلوب كيفية استثناء العطل الأسبوعيه ( الجمعة و السبت - أو أى أيام أخرى تبعا للحاجة ) وكذلك التواريخ للعطلات الرسمية والمحجوزة ومسجلة فى الجدول tblHolidays وذلك كما تم عمله فى الحل بالمرفق الأصلى للموضوع الأساسى جزاكم الله خير Daynamic Gnrate Date.zip
    1 point
  20. السلام عليكم اتفضل ابوجوده بطريقه اخرى بالاستعلام وليس عن طريق الكود استعلام qryVacationsDetailed3 SELECT DISTINCT tblRegVacation.EmpCode, DateAdd("d",[Factor],[StartDate]) AS [First Date], tblRegVacation.EndDate FROM qrySysSourc, tblRegVacation WHERE (((DateAdd("d",[Factor],[StartDate])) Not In (SELECT tblHolidays.HolidayDate FROM tblHolidays; )) AND ((qrySysSourc.Factor) Between 0 And DateDiff("d",[StartDate],[EndDate])) AND ((Weekday(DateAdd("d",[Factor],[StartDate]))) Not In (6,7))); بالتوفيق Daynamic Gnrate Date_1.mdb
    1 point
  21. وعليكم السلام ورحمه الله وبركاته اخى محمد جرب المرفق فيه 2 استعلام وكل واحد بطريقه تقبل تحياتى Daynamic Gnrate Date.mdb
    1 point
  22. في بالي حاليا فكرتين: أولهما عمل جدول من حقل واحد نوع بايت ونضع فيه مسلسل من 0 إلى 255 وهذا الجدول يبقى مصاحبا لقاعدة البيانات ويصلح أن يكون متعدد الاستخدامات، فمثلا أنا أستخدم هذه الفكرة في برامج المخازن لعمل فاتورة ثابتة الطول بغض النظر عن عدد سجلاتها. ويمكن مضاعفة العدد باستخدام استعلام التوحيد وأعتقد سيكون كافيا مع ملاحظة أن استعلام التوحيد كذلك محدود في عدد الجداول أو الاستعلامات المطلوب توحيدها. والفكرة الأخرى الاستعانة بالإكسل. أحتاج جوابك حتى أبدأ الليلة ببلورة الفكرة وتطبيقها إن شاء الله.
    1 point
  23. هذه دالة من الزمن القديم من أبي هادي لعد أي يوم من الأسبوع بين تاريخين وإجراء مني لطريقة استخدامها: Function CountWkDay(ByVal Date1 As Date, _ ByVal Date2 As Date, _ WkDay As Byte) As Long 'WeekDay Counter Date1 = Date1 - 1 Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Date2 - Date1 End Function Sub CountWkDayTest() Dim Date1 As Date Dim Date2 As Date Date1 = DateSerial(2022, 1, 1) Date2 = DateSerial(2022, 1, 20) MsgBox CountWkDay(Date1, Date2, vbFriday) + _ CountWkDay(Date1, Date2, vbSaturday) End Sub هذه الدالة قد تقلل من كتابة الأكواد وخطوات الحسابات للعاملين بشؤون الموظفين أو المحاسبين، وربما تكون سببا في تغيير ما تفكر فيه الآن. 🙂 . ممكن نعرف جدوى هذه الخطوة؟ سأعود لكم الليلة إن شاء الله.
    1 point
  24. هذه دالة من الزمن القديم لأبي هادي لعد أي يوم من أيام الأسبوع بين تاريخين وإجراء مني لطريقة استخدامها: Function CountWkDay(ByVal Date1 As Date, _ ByVal Date2 As Date, _ WkDay As Byte) As Long 'WeekDay Counter Date1 = Date1 - 1 Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Date2 - Date1 End Function Sub CountWkDayTest() Dim Date1 As Date Dim Date2 As Date Date1 = DateSerial(2022, 1, 1) Date2 = DateSerial(2022, 1, 20) MsgBox CountWkDay(Date1, Date2, vbFriday) + _ CountWkDay(Date1, Date2, vbSaturday) End Sub
    1 point
  25. مساهمة إضافية بعد مساهمة أستاذنا @ابو جودي وبعد إذنه Private Sub AddNewDates() Dim rst As Recordset Dim iDate As Long Set rst = CurrentDb.OpenRecordset("tblDay", dbopendynaset) For iDate = CLng(Me.txtFirstDate) To CLng(Me.txtLastDate) If IsNull(DLookup("DayDate", "tblDay", "Clng(DayDate)=" & iDate)) Then If Weekday(iDate, vbSunday) < vbFriday Then If IsNull(DLookup("HolidayDate", "tblHolidays", "Clng(HolidayDate)=" & iDate)) Then With rst .AddNew !DayDate = iDate .Update End With End If End If End If Next iDate Set rst = Nothing MsgBox "Done" End Sub
    1 point
  26. اتفضلى استبدلى الكود تبعك بهذا الكود Dim iDate As Date Dim strSQL As String Dim isHoliday As Integer For iDate = Me.txtFirstDate To Me.txtLastDate If Format(iDate, "w") = 1 Or Format(iDate, "w") = 2 Or Format(iDate, "w") = 3 Or Format(iDate, "w") = 4 Or Format(iDate, "w") = 5 Then isHoliday = DCount("*", "tblHolidays", "HolidayDate = " & Format(iDate, "\#mm\/dd\/yyyy\#")) If isHoliday <= 0 Then strSQL = "INSERT INTO tblDay" strSQL = strSQL & " ( DayDate )" strSQL = strSQL & " SELECT " strSQL = strSQL & " '" & iDate & "';" DoCmd.SetWarnings False DoCmd.RunSQL strSQL DoCmd.SetWarnings True End If End If Next iDate شرح التعديل تم الاعلان عن متغير رقمى isHoliday تم اضافة دالة المجال dcount من جدول الاعياد tblHolidays فى حالة ان تاريخ العيد او العطلة الرسمية يساوى قيمة المتغير iDate والذى يتم اسناد تورايخ البدء والانتهاء للحلقة التكرارية اليه وفى حالة ان القيمة العددية للمتغير isHoliday =0 اى انه لا يوجد اى تاريخ لاى عطلة فى الجدول مسبقا تتساوى مع التاريخ الحالى فى حلقة التكرار وفى هذه الحالة باستخدام قاعدة IF يتم الحاق التاريخ الى الجدول tblDay طبعا ان كانت القيمة العددية للمتغير isHoliday >0 هذا معناه ان ان التاريخ الحالى فى الحلقة يتساوى مع احد التواريخ فى جدول الاعياد tblHolidays وسوف يتم تجاهل الالحاق لهذا التاريخ وتستمر الحلقة حتى تنتهى من عملها الفكرة أعجبتنى جدا وأكثر ما أعجبنى طريقة أستاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @jjafferr فى كتابة استعلام الالحاق داخل محرر الأكواد تم رفع المرفق بعد التعديل للكود .. مثال-(2).mdb
    1 point
  27. السلام عليكم في حدث مفتاح للاسفل للنموذج ضع هذا الكود: If KeyCode = vbKeyF6 Then DoCmd.OpenForm "نموذج6" End If كما يجب أن تغير خاصية مفتاح المعاينة إلى نعم في خصائص هذا النموذج
    1 point
×
×
  • اضف...

Important Information