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

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

  1. Moosak

    Moosak

    أوفيسنا


    • نقاط

      10

    • Posts

      1,997


  2. Ali Mohamed Ali

    Ali Mohamed Ali

    المشرفين السابقين


    • نقاط

      6

    • Posts

      11,630


  3. أبو إبراهيم الغامدي
  4. ابوبسمله

    ابوبسمله

    الخبراء


    • نقاط

      4

    • Posts

      918


Popular Content

Showing content with the highest reputation on 27 أغس, 2022 in all areas

  1. السلام عليكم أخي قاسم 🙂 الحمدلله بعد العديد من المحاولات في جلب أسماء القواعد الخلفية المتعددة (وبدون تكرار) في حال أن القاعدة الواحدة لها أكثر من جدول، توصلت بفضل الله إلى الطريقة . الفكرة تتلخص في كود يحضر لك جميع مسارات القواعد الخلفية BE ويخزنها في متغير من نوع Collection وبدون تكرار .. ثم في حلقة Loop يقوم بإرسال مسارات أو روابط هذه القواعد إلى كود النسخ الإحتياطي Backup ليقوم بحفظ نسخة إحتياطية من القاعدة الخلفية بنفس المسمى + التاريخ والوقت .. يحفظها في مجلد Backup بجانب قاعدة البيانات . في الملف المرفق ستجدون 3 ملفات ( الواجهة : My_App_FE.accdb و القواعد الخلفية : BE_1.accdb و BE_2.accdb ) (ملاحظة : لن تحتاج لإعادة ربط الواجهة بالقواعد الخلفية ، فقد جعلتها ترتبط تلقائيا عند الفتح ) 🙂 سيفتح لك النموذج واضغط على حفظ وشاهد النتيجة 🙂 إنشاء مجلد الباكب تلقائيا : النسخ الإحتياطية : وهذا هو المرفق: 🙂 Backup Mor Than One BE.zip
    5 points
  2. وبعد هذا الجهد .. صدفة وجدت هذا الموضوع لحبيبنا المهندس محمد عصام @ابو جودي طبعا بطريقة مختلفة وفكر متجدد 🙂
    3 points
  3. بالتوفيق استاذ ولاثراء الموضوع واضافة طريقة اخرى ممكن الاستغناء عن النموذج الفرعي واظهار السجلات من خلال مربع قائمة وفي خصائص مربع القائمة اجعل مصدر الصف استعلام قيمته تساوي ⬇️ SELECT table2.ID, table2.Name, table2.Age FROM table2 WHERE (((table2.ID)=[Forms]![frm_table1]![select_id])); تحياتي
    2 points
  4. السلام عليكم اتفضل استاذ @marwa41 ان شاء الله يكون ما تريد سيتم انشاء ملف pdf باسم الشيت اللى انت موجود فيه والمجلد فى اى مكان فى الجهاز Sub print_pdf() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ Application.ActiveWorkbook.Path & "\printpdf\" & ActiveSheet.Name & ".pdf", Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True End Sub بالتوفيق Data.rar
    2 points
  5. وعليكم السلام ورحمه الله وبركاته استبدل الكود الخاص بك بهذا الكود Private Sub CommandButton1_Click() Dim Sh As Worksheet, LROW As Long Set Sh = ThisWorkbook.Worksheets("قاعدة بيانات") LROW = Sh.Range("I" & Rows.Count).End(xlUp).Row + 1 If WorksheetFunction.CountIfs(Sh.Range("I2:I" & LROW), TextBox1.Value) = 0 Then Sh.Range("I" & LROW).Value = TextBox1.Value Sh.Range("I" & LROW + 1).Value = TextBox1.Value TextBox1.Value = "" Else MsgBox "اسم الصنف مكرر" End If MsgBox ("يرجى ادخال البيانات كاملة بصورة صحيحة") End Sub
    2 points
  6. 2 points
  7. السلام عليكم لم ستطع التجربية يعمل معي الكود ، ربما يستخدم مكتبات ليست محملة حاليا على جهازي انا صراحة لم اتطرق الي موضوع التنزيل من تطبيق الواتس سابقا و لكن مبدأيا هل يمكن ان توضح لنا لماذا تريد عمل ذلك بالكود فى اكسيل ، لست خبيرا فى الواتس و لكن أعتقد أن تصدير الصور من الواتس اب ويب متاح من التطبيق https://howtosguru.com/how-to-download-all-photos-from-whatsapp-web/
    2 points
  8. تمت إضافة الكود على المثال: finish_02.rar
    2 points
  9. لأن بداية الفترة الثالثة في المثال تبدأ من 1-10-2020 وليست 30-9-2020! قم بتغييرها حسب متطلباتك
    2 points
  10. تفضل استاذ منير طبعاً بعد اذن استاذنا الكبير ابراهيم .. فالكود يعمل بكل كفاءة وان حدث اى مشكلة معك فبسببك انت لأنك لم تضع الكود كما يجب ان يكون بالملف وشوف بنفسك حتى يتم اغلاق المشاركة Private Sub CommandButton1_Click() arr = Array("B5", "C5", "F5", "C8", "E9", "G10") tmp = Array(TextBox1.Value, TextBox4.Value, TextBox3.Value, _ TextBox2.Value, TextBox5.Value, TextBox6.Value) For i = LBound(arr) To UBound(arr) Range(arr(i)) = tmp(i) Next For Each Ctrl In Me.Controls If TypeName(Ctrl) = "TextBox" Then Ctrl.Value = "" End If Next Ctrl End Sub ترحيل إلى خانات متفرقة.xlsb
    2 points
  11. الشكر لله ثم لاخواننا واساتذتنا جزاهم الله عنا كل خير اتفضل التعديل بالتوفيق karem1.mdb
    1 point
  12. اتمنى ان يكون هذا هو طلبك لمزيد من الامثله قم بزيارتنا https://wayprograms.blogspot.com/ counter problem.rar
    1 point
  13. ولن تجد لانك جعلت تنسيق النموذج الفرعي ورقة بيانات غير طريقة العرض الى نماذج مستمر وحينها افعل ما تريد
    1 point
  14. أخي @محمد احمد لطفى ، هل اختيارك لأفضل إجابة بناء على مقارنة وتفاضل بين الحلول؟ أرجو تزويدي بمؤاخاذاتك على مثالي ، حتى أتجنب أخطائي مستقبلا وأطور من نفسي وأتقن إرضاء السائلين. عموما حتى المثال الأخير به خطأ ولا يزال مثالي باعتقادي هو الأصح بنتائجه ، مع الإعتذار للزميل والأخ @أبو إبراهيم الغامدي فهو من أقوى المبرمجين في الموقع الذين يجيدون كتابة الشفرات.
    1 point
  15. جزاكم الله كل خير على هذا المجهود الرائع الاستاتذة الكرام استاذنا hassona229 واستاذنا رضا على تم حل المسألة بكرمكم
    1 point
  16. وعليكم السلام ورحمه الله وبركاته اخي ابو علياء عاطف ..وقف الكود الموجود في Module21 قبل ان تبدأ بعمليه النسخ واللصق أبو عزيز بعد التعديل النهائي 2022.xlsb
    1 point
  17. وعليكم السلام ورحمه الله وبركاته اتفضل اخى @dr_bioman بالتوفيق karem2019 new_1.mdb
    1 point
  18. 1 point
  19. صدقت! لأن هناك حالتين في الشريحة الثالثة لم أقوم بإدراجها! والتي أشرتَ إليها واحدة منها.. والأخيرة أن تكون الحالة أصغر من بداية الفترة وأكبر من نهاية الفترة.. بمعنى أنها مفتوحة الطرفين.. وهذه لا أتوقع حدوثها لأن نهاية الفترة الثالثة 2050! finish (5).mdb
    1 point
  20. فعلا افتخر بنفسي اني تعرفت عليك اخي @Moosakوبارك الله بجهودك
    1 point
  21. Function Between(inDate As Date, SP As Date, EP As Date) As Boolean Between = inDate >= SP And inDate <= EP End Function Public Function DatePeriod(ByVal StartDate As Date, ByVal EndDate As Date, _ Optional ByRef Per1 As Integer, _ Optional ByRef Per2 As Integer, _ Optional ByRef Per3 As Integer) As String Const SP1 = #1/1/1990#: Const EP1 = #9/6/2016# Const SP2 = EP1 + 1: Const EP2 = #9/30/2020# Const SP3 = EP2 + 1: Const EP3 = #1/1/2050# '------------------ If EndDate < StartDate Then GoTo Result If Not (Between(StartDate, SP1, EP3) Or _ Between(EndDate, SP1, EP3) Or _ Between(SP1, StartDate, EndDate) Or _ Between(EP3, StartDate, EndDate)) Then GoTo Result If StartDate < SP1 Then StartDate = SP1 If EndDate > EP3 Then EndDate = EP3 '------------------ If Between(StartDate, SP1, EP1) Then Per1 = DateDiff("w", StartDate, IIf(EP1 > EndDate, EndDate, EP1)) If EP1 < EndDate Then StartDate = SP2 Else GoTo Result End If If Between(StartDate, SP2, EP2) Then Per2 = DateDiff("m", StartDate, IIf(EP2 > EndDate, EndDate, EP2)) If EP2 < EndDate Then StartDate = SP3 Else GoTo Result End If Per3 = DateDiff("m", StartDate, IIf(EP3 > EndDate, EndDate, EP3)) Result: DatePeriod = Per1 & "," & Per2 & "," & Per3 End Function Sub DatePeriodTest() Dim Per1 As Integer, Per2 As Integer, Per3 As Integer Debug.Print " " & DatePeriod(DateSerial(1989, 9, 1), DateSerial(2050, 1, 1), Per1, Per2, Per3) Debug.Print Per1, Per2, Per3 End Sub إن شاء الله فهمت طلبك بشكل صحيح.
    1 point
  22. وعليكم السلام 🙂 مشكلتك في مكان آخر في الكود 🙂 اعمل Compile ، وصحح جميع الاخطاء ، وبيشتغل البرنامج كما يجب ان شاء الله 🙂 . وبما انك مصرح بنوعي يجب عليك في الكود تحديد اي نوع من انواع Recordset تريد ان تستعمل ، لأنك مصرح بالنوعين ، لذا يجب كتابة DAO ، واعمل Dim مستقل للـ Recordset وإلا فلن يُظهر لك اي مساعدة في الكود : Dim db As DAO.Database dim RS As DAO.Recordset جعفر
    1 point
  23. أهلا محمد... أعتذر منك لأني لم استجب لنداءك قمت بالتوفيق بين أفكار الزملاء بالحل المرفق.. Option Compare Database Option Explicit Public Const SP1 = #1/1/1990# Public Const EP1 = #9/6/2016# Public Const SP2 = #9/7/2016# Public Const EP2 = #9/30/2020# Public Const SP3 = #9/30/2020# Public Const EP3 = #1/1/2050# Public Function DatePeriod(StartDate, EndDate, Interval) Dim Periods(1 To 3) As Variant If (StartDate >= SP1) And (EndDate <= EP1) Then Periods(1) = DateDiff("w", StartDate, EndDate) ElseIf (StartDate < SP1) And (EndDate <= EP1) Then Periods(1) = DateDiff("w", SP1, EndDate) ElseIf (StartDate < SP1) And (EndDate > EP1) Then Periods(1) = DateDiff("w", SP1, EP1) Else Periods(1) = 0 End If If (StartDate >= SP2) And (EndDate <= EP2) Then Periods(2) = DateDiff("m", StartDate, EndDate) ElseIf (StartDate < SP2) And (EndDate <= EP2) Then Periods(2) = DateDiff("m", SP2, EndDate) ElseIf (StartDate < SP2) And (EndDate > EP2) Then Periods(2) = DateDiff("m", SP2, EP2) ElseIf (StartDate >= SP2) And (EndDate > EP2) Then Periods(2) = DateDiff("m", StartDate, EP2) Else Periods(2) = 0 End If If (StartDate >= SP3) And (EndDate <= EP3) Then Periods(3) = DateDiff("m", StartDate, EndDate) ElseIf (StartDate >= SP3) And (EndDate > EP3) Then Periods(3) = DateDiff("m", StartDate, EP3) Else Periods(3) = 0 End If DatePeriod = Periods(Interval) End Function finish .mdb
    1 point
  24. وعليكم السلام ورحمة الله تعالى وبركاته تم انشاء كود جديد يلبي المطلوب بادن الله Sub M_H() Dim i As Long Dim MH As Long, k As Long Application.ScreenUpdating = False With Sheets("saad") lr = Cells(Rows.Count, 1).End(3).Row 'افراغ النطاق من البيانات السابقة قبل الترحيل Sheets("data").Range("c10:l" & lr).ClearContents lrow = .Cells(Rows.Count, 2).End(xlUp).Row ' الاعمدة المطلوب ترحيلها frt = Split("B,D,E,G,I,L,J,K,O", ",") 'الاعمدة المرحل اليها tot = Split("D,E,F,G,H,K,I,J,L", ",") For i = LBound(frt) To UBound(frt) 'نسخ البيانات ابتداءا من الصف العاشر .Range(frt(i) & "10:" & frt(i) & lrow).Copy Sheets("Data").Range(tot(i) & "10") Next i End With ' ترقيم تلقائي للصفوف المرحلة بشرط وجود قيمة في 'العمود(D) 'ابتداءا من الصف العاشر With Sheets("data") k = 1 For MH = 10 To .Range("D" & .Rows.Count).End(xlUp).Row If .Range("C" & MH) = valeu Then .Range("C" & MH) = k k = k + 1 End If Next MH End With ' كود اظافي 'With Sheets("data") '.Range("C10") = 1 '.Range("C11") = 2 '.Range("C10:C11").AutoFill .Range("C10:C" & lrow) 'End With End Sub AHMAD-MH.xlsm
    1 point
  25. السلام عليكم ورحمة الله ضف هذه الجزئية فى نهاية الكود For Each Ctrl In Me.Controls If TypeName(Ctrl) = "TextBox" Then Ctrl.Value = "" End If Next Ctrl
    1 point
  26. السلام عليكم ورحمة الله خصص زر فى الفورم و ضع به هذا الكود Private Sub CommandButton1_Click() arr = Array("B5", "C5", "F5", "C8", "E9", "G10") tmp = Array(TextBox1.Value, TextBox4.Value, TextBox3.Value, _ TextBox2.Value, TextBox5.Value, TextBox6.Value) For i = LBound(arr) To UBound(arr) Range(arr(i)) = tmp(i) Next End Sub
    1 point
  27. لكل قسم في التقرير "احداثه" الخاصة به : جعفر
    1 point
  28. تفضل وأكثر مما تريد فورم ادخال وتعديل وحذف.xlsm
    1 point
  29. تفضل هذا كود تكرار السجل : 🙂 Private Sub DublicateRecBtn_Click() On Error GoTo Err_DublicateRecBtn_Click DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdCopy DoCmd.RunCommand acCmdRecordsGoToNew DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdPaste Exit_DublicateRecBtn_Click: Exit Sub Err_DublicateRecBtn_Click: MsgBox Err.Description Resume Exit_DublicateRecBtn_Click End Sub
    1 point
  30. وعليكم السلام-جرب هذا =IF(INT(C2)<>C2,C2+1.5,C2) 1اضافة عدد للكسر.xlsx
    1 point
  31. أكرمك الله استاذ مجدى وأحسن الله اليك
    1 point
  32. تفضل أخى محمود تحويل من التاريخ الهجرى الى الميلادى.xlsx
    1 point
×
×
  • اضف...

Important Information