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

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

  1. Foksh

    Foksh

    الخبراء


    • نقاط

      44

    • Posts

      4984


  2. عبدالله بشير عبدالله
  3. Moosak

    Moosak

    أوفيسنا


    • نقاط

      16

    • Posts

      2382


  4. أبومروان

    أبومروان

    03 عضو مميز


    • نقاط

      10

    • Posts

      364


Popular Content

Showing content with the highest reputation since 07/09/26 in all areas

  1. أخواني وأساتذتي ومعلمينا ( دون استثناء ) تشجيعاً للمتابعة والتقدم باستكمال الفكرة المعروضة في الفيديو التالي ، أرجو منكم مشاركتي أفكاركم وتعليقاتكم حول الفكرة الجديدة التي أقوم بتطويرها .. وأعلم أن هناك موضوع واحد على الأغلب قد تحدث عن الفكرة ولكن بطريقة مختلفة تماماً عن ما سترونه في :-
    6 points
  2. بعد تجربة كل الواجهات مع سيكوال من سى شارب الى فيجول بيسك نت الى واجهات البايثون كلهم متجمعين لايساووا مرونة اكسس فى الاتصال والاستعلامات التمريرية وكنت لو اتمنى ان تسعى مايكروسوفت لتطوير اكسس كلغة ليناسب الويب بدلا من دعمها الدائم ل power apps
    6 points
  3. تم تعديله الكود بالاستعانة ب AI تفقيط معدل.xlsm
    4 points
  4. طيب .. رغم أن الطلب تم تحقيقه من خلال Data Validation ، ولكن هذا لا يمنع من تجربة الفكرة التالية من خلال الأكواد . حيث تم دمج الحدث عند التغيير للورقة من :- If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("B3:B3000")) Is Nothing Then With Target(1, 5) .Value = Date & " " & Time .EntireColumn.AutoFit End With End If ليصبح :- Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Or Target.Row < 3 Then Exit Sub If Target.Column = 2 And Target.Value <> "" Then Target.Offset(0, 4).Value = Now If (Target.Column = 4 Or Target.Column = 5) And Trim(Me.Cells(Target.Row, "D").Value) = "بيع" Then Dim r As Long: r = Target.Row Dim itemCode As Variant: itemCode = Me.Cells(r, "B").Value Dim qty As Double: qty = Val(Me.Cells(r, "E").Value) If Not IsEmpty(itemCode) And qty > 0 Then Dim stockSheet As Worksheet: Set stockSheet = Worksheets("المخزن") Dim findCell As Range Set findCell = stockSheet.Range("B3:B800").Find(What:=itemCode, LookIn:=xlValues, LookAt:=xlWhole) If Not findCell Is Nothing Then Dim realAvailableStock As Double realAvailableStock = Val(stockSheet.Range("I" & findCell.Row).Value) + qty If qty > realAvailableStock Then MsgBox "• لا يمكنك إتمام عملية البيع هذه" & vbCrLf & vbCrLf & _ "• الصنــف: " & Me.Cells(r, "C").Value & vbCrLf & _ "• الرصيد المتاح حالياً: " & realAvailableStock & " قطعة" & vbCrLf & _ "• الكمية المطلوبة: " & qty & " قطعة", _ vbCritical + vbMsgBoxRight + vbMsgBoxRtlReading, "تجاوز الرصيد" Application.EnableEvents = False Me.Cells(r, "E").ClearContents Me.Cells(r, "E").Select Application.EnableEvents = True End If End If End If End If End Sub ملفك بعد التطبيق :- مخزن 1.xlsb
    4 points
  5. السلام عليكم ورحمة الله وبركاتة مرفق لكم لقد صممت برنامج مخازن يحتوى على دخول مستخدمين اجبارى كلمة المستخدم admin كلمة السر 123 اختيارى دخول بريد الكترونى رجاء كتابة البريد ضرورى دخول رقم الهاتف رجاء كتابة رقم الواتس ضرورى ويبدأ من 201 لانة سيربط نسيان كلمة المرور مستقبليا اما بخصوص نسيان كلمة السر فهى جارى العمل عليها لانها تحت التطوير وايضا عند الدخول يعطى شاشة ترحيب جميلة جدا كأنة يقوم بالدخول الى النظام وايضا عند الدخول الى النظام يدخل الى شاشة به محتويات اساسيات تحتوى على 1 - تكويدات ( مخازن وموردين واصناف وعملاء ومندوبين ) 2 - حركة الاصناف 3 - حركة المشتريات والمبيعات والمرتجعات وتسوية مخزون 4 - تقريرات 5 - صلاحيات دخول المستخدمين 6 - عمل نسخة احتياضية بمجرد ان تقوم بتحديد كلا من الخيارات يظهر تلقائى البنود الخاصة بكل خيار تم عمل حركة تحويل بين المخازن مبدئيا ويتم عمل جميع الحركات من شراء وبيع والخ ارجو ان ينال اعجابكم وشكرا لكم TransferSystem 2027.xlsm
    4 points
  6. اشكر اخى عبدالله بشير عبدالله على هذه الملاحظة وتم التعديل عليها دليل ميزات للمستخدمين والإدارة: وثيقة التحديثات الأمنية ومميزات واجهة تسجيل الدخول المحدثة تم تطوير وتحديث واجهة تسجيل الدخول البرمجية (Login Form) وتزويدها بحزمة من المزايا الذكية التي تضمن أعلى مستويات الأمان، الخصوصية، وسلاسة تجربة المستخدم (UI/UX). تلخص هذه الوثيقة أهم الإضافات البرمجية وفوائدها التقنية والتشغيلية: 1. الفحص الذكي للاتصال بالإنترنت (Active Connectivity Verification) الوصف الفني: يعتمد النظام على استدعاء دوال ويندوز السيادية (WinINet API) للتحقق الفعلي واللحظي من وجود اتصال إنترنت نشط بجهاز المستخدم قبل البدء في معالجة طلب استرجاع البيانات. فوائد العمل: منع الأخطاء البرمجية: يمنع تجمد أو توقف (Freeze) برنامج إكسيل عند محاولة فتح روابط خارجية في غياب الشبكة. توجيه ذكي للمستخدم: يظهر رسالة تنبيهية فورية وواضحة للمستخدم تفيد بأن "الإنترنت غير فعال" مع إيقاف الإجراء فوراً لتوفير الوقت والجهد. 2. التشفير والتخفي البصري للبيانات (Advanced Visual Masking) الوصف الفني: استخدام خاصية الحجب التلقائي PasswordChar لحقول البريد الإلكتروني ورقم الواتساب بمجرد استدعائها وعرضها على الشاشة لتظهر على هيئة رموز نجوم (***). فوائد العمل: حماية الخصوصية: يمنع المتطفلين أو المحيطين بالمستخدم من رؤية بيانات الأمان الحساسة المعروضة على الشاشة. كفاءة برمجية: التشفير بصري فقط على الواجهة؛ مما يعني أن النظام يقرأ ويكتب البيانات الحقيقية من وإلى قاعدة البيانات (شيت إكسيل) بسلاسة تامة ودون أي تعارض. 3. حماية البيانات ضد التعديل والتلاعب (Write-Protection & Locking) الوصف الفني: تطبيق خاصية القفل التام Locked = True على حقول الاسترجاع (البريد والواتساب) فور ظهورها على الشاشة. فوائد العمل: سلامة البيانات: منع المستخدم من الكتابة داخل هذه الحقول أو تعديلها أو مسحها بالخطأ، مما يضمن دقة البيانات المسترجعة. وضوح الرؤية: تضمن هذه الخاصية بقاء النصوص واضحة ومقروءة للمستخدم، على عكس خاصية الإلغاء الكامل (Enabled = False) التي تجعل الحقول باهتة وصعبة القراءة. 4. التنسيق البصري والديناميكي للواجهة (Dynamic UI Alignment) الوصف الفني: إعادة برمجة إحداثيات عناصر الشاشة (الخاصية .Top و .Height) لتتفاعل وتتمدد أوتوماتيكياً عند طلب استرجاع الحساب. فوائد العمل: مظهر احترافي ومتناسق: تم ترحيل زر اختيار لغة البرنامج chkLanguage وزر التذكر وزر الدخول إلى الأسفل بدقة متناهية فور تمدد الحقول، مما يمنع تماماً تداخل العناصر بصرياً ويحافظ على جمالية الواجهة. 5. دعم ثنائية اللغة الفورية (Instant Bilingual Support) الوصف الفني: نظام ترجمة مدمج يتفاعل لحظياً مع اختيار المستخدم للغة (العربية أو الإنجليزية). فوائد العمل: مرونة التشغيل: تترجم جميع العناوين، الحقول، الرسائل التنبيهية، وحتى نوافذ التأكيد فوراً بمجرد الضغط على خيار اللغة دون الحاجة لإعادة تشغيل البرنامج أو إغلاقه. 6. تدوين ومراقبة سجلات الدخول (Automated Security Logging) الوصف الفني: تفعيل نظام تدوين خلفي (سري) يقوم بتسجيل كل حركة دخول ناجحة أو خاطئة في شيتات مخصصة (Log_Success و Log_Failed). فوائد العمل: الرقابة والأمن: تتبع تفصيلي لعمليات الدخول يشمل (التاريخ، الوقت، اسم المستخدم، وعدد المحاولات)، مع حظر المنظومة وإغلاق الملف بالكامل تلقائياً عند تجاوز 3 محاولات خاطئة لحماية أرصدة وبيانات المنشأة. ملحوظة تم اضافة تسجيل المستخدمين سواء كان ادارة او موظفين مع تحديد مستوى المشاهدة والصلاحيات والرجاء من يريد المساهمة فى عمل المشروع لوجة الله تعالى يتفضل مشكورا لتعم الفائدة على الجميع هنا تم عمل شاشة دخول و تسجيل مستخدمين و تحويل يبن المخازن و جارى عمل فاتورة شراء TransferSystem 2027 - Copy - Copy.xlsm
    4 points
  7. حبايب قلبي عشاق برنامج الاكسس تم تحديث نظام lab الطبي نظام متكامل ونظراً لحجمه عملته لكم في رابط ما عليك الا تنزله وفك الضغط في قرص d كلمة المرور ١ حال عدم السماح بالدخول يرجع السبب الى اعدادات الماكرو لديك قم بالدخول الى خيارات من اي ملف اكسس مفتوح ثم إعداد الماكرو واعمل سماح بالتوفيق https://drive.google.com/file/d/1YDRRLchNAfArPzdS129nnpQlqJLHfL8M/view?usp=drivesdk
    3 points
  8. كررت التجربة والملف يعمل ولا يسمح باظافة اي كمية تتجاوز الموحود بالمخزن ولكن هناك سبب يجغل الرصيد في المخزن بالسالب عندما تكتب الكمية اولا ثم تختار توع الحركة بعدها هنا يتم قبول الكمية ولو كان الصنف انتهى من المخزن وهذه حلها الغاء خاصية تجاهل الفراغ حينها لا يقبل اي كمية سواء اخترت نوع الحركة اولا او اخر جرب الغاء الخاصية في ملف الاستاذ Foksh واليك ملف اخر بنفس فكرة Data Validation باستخذام عمود مساعد في العمود o بالرغم انني لا احبذ استخذم الاعمدة المساعدة وله نفس نتائج ملف معلمنا Foksh مخزن 1.xlsb
    3 points
  9. تم التعديل الكود حاليا يقوم بحذف اي صور من النطاق a2:v2 قبل ادراج الصورة الجديدة حتى لا تتراكم الصور فوق بعضها كذلك تم تعديل اسم الصورة ومكانها على الجهاز بحيث يمكنك احتيار اي صورة وباي اسم وباي امتداد من الجهاز ويمكنك اضافة اي امتداد اخر غير مدرج بالكود .Filters.Add "جميع الصور", "*.jpg; *.jpeg; *.png; *.bmp; *.gif; *.tiff" تم استتناء ورقة3-ورقة6 من ادراج الصور ويمكنك استتناء المزيد وذلك باظافة اسم الورقة بالكود من الجزء For Each ws In Worksheets If ws.Name <> "ورقة3" And ws.Name <> "ورقة6" Then ادراج صورة (2).xlsm
    3 points
  10. سيكون الحل بطريقتين حسب استخدامك للملف إذا كنت تقوم بفلترة العمود الأول (عمود1) يدوياً ليظهر فقط التواريخ من 8 إلى 11: استخدم المعادلة =SUMPRODUCT(SUBTOTAL(109; OFFSET(I8:I100; ROW(I8:I100)-ROW(I8); 0; 1)); --(H8:H100=E4)) وإذا أردت حصر الجمع تلقائياً بين تاريخين دون الاعتماد على الفلترة اليدوية استخدم المعادلة =SUMIFS(I8:I100; H8:H100; E4; G8:G100; ">=08-يوليه"; G8:G100; "<=11-يوليه") واليك المعادلتان في ملف واحد واختر ما يناسب طلبك جمع القيم لشخص مع الفلترة.xlsx
    3 points
  11. وعليكم السلام ورحمه الله وبركاته اتفضل لعله يكون المطلوب جدول ورديات.xlsm
    3 points
  12. اعرض الملف 🏆🌟 نتائج تحدي المبدعين 13 🌟🏆 :: إضافة وتحرير سجلات في جدول من خلال عنصر ويب :: 📟🌟 السلام عليكم ورحمة الله وبركاته يطيب لي أن أطرح بين أيديكم نتائج : 🙂 🌟 تحدي المبدعين 13 🌟 :: أدخال البيانات في جدول من عنصر ويب :: 🌟 هذا التحدي هو عبارة عن تحدي يطرح بين فترة وأخرى على جروب الواتسأب مجتمع اكسس جروب وكان هذا التحدي هو التحدي رقم 13 وكان موضوع التحدي هو إدخال وتعديل البيانات في الجداول عن طريق عنصر ويب داخل نموذج . 🤗 المشاركين : لدينا 4 مشاركات رائعة من 4 مشاركين متميزين : - الأستاذ/ أبو إلين (مشاركة). - المهندس/ موسى الكلباني (مشاركة). - أخوكم/ فادي - Foksh (مشاركة). - الأستاذ/ أبو ناصر - AbuNassir (مشاركة). :: صور المشاركات :: :: الأستاذ أبو إلين :: :: المهندس موسى الكلباني :: :: أخوكم فادي - Foksh :: :: أبو ناصر - AbuNassir :: ⭐ رابط الانضمام لمجموعة الواتسأب : https://drive.google.com/drive/folders/1Ku3j_1TBQ03M199RBAO86DqDcFKcgAk3?usp=drive_link ⭐ رابط جميع ملفات التحديات السابقة 🌟 : https://drive.google.com/drive/folders/1xOqWpWiLqKacPTG2MQDrohJp5DKDRTY2?usp=drive_link 🌸😊 كل التوفيق للجميع 😊🌸 صاحب الملف Foksh تمت الاضافه 07/14/26 الاقسام قسم الأكسيس  
    3 points
  13. وعليكم السلام ورحمه الله وبركاته اليك الحل بالكود لعله يكون المطلوب 👇 Sub SeparateSubjects() Dim ws As Worksheet Dim lastRow As Long Dim i As Long, j As Long Dim outputRow As Long Dim subjects() As String Dim subject As Variant Set ws = ThisWorkbook.Sheets(1) lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row outputRow = 6 ws.Range("D6:E1000").ClearContents For i = 6 To lastRow Dim subjectsText As String subjectsText = ws.Cells(i, "C").Value Dim seatNumber As String seatNumber = ws.Cells(i, "b").Value subjects = Split(subjectsText, " - ") For j = LBound(subjects) To UBound(subjects) ws.Cells(outputRow, "D").Value = seatNumber ws.Cells(outputRow, "E").Value = Trim(subjects(j)) outputRow = outputRow + 1 Next j Next i MsgBox "تم فصل المواد بنجاح!", vbInformation End Sub بالكود.xlsm
    3 points
  14. هذا هو الحل المنطقي ولكن ولأن الأخ أحمد في ظل الأمر الواقع فلماذا لا نصل لهذه النتيجة بطريقة أخرى؟ قمت بإرفاق المثال بعد إنشاء إستعلام توحيدي يضم الثلاثة الجداول مع إضافة حقل (داخل الإستعلام) بإسم ClassNo يتم فيه إضافة رقم الصف لكل جدول وجعلت هذا الإستعلام هو مصدر بيانات التقرير ثانيا من زر أمر فتح التقرير لكل نموذج قمت بإضافة معيار رقم الصف لتصفية بيانات التقرير مثلاً في النموذج الأول سيصبح معيار التصفية كالتالي ClassNo=1 And onlyyou=true ثالثاً بإستخدام دالة Choose قمت بكتابة رقم الصف في التقرير لا أعلم إذا كان هذا الحل سيناسب أخونا @أحمد العيسى أم أن هناك مشاكل أخرى ستظهر عنده؟ ملاحظة أخيرة : جدول الصف الثالث لم يحتوي على الحقول (Address + Work_father + Telephone) لذلك قمت بإضافتها في الإستعلام مع تعيين قيم فارغة لها تحياتي db.mdb
    2 points
  15. للتوضيح ، حيث ما تم تعديله أنه عند القيام بعملية بيع ، تقوم المعادلة حالياً بإعادة إضافة الكمية المكتوبة حالياً إلى الرصيد المحسوب في ورقة المخزن ، فيسترجع التحقق من الصحة الرصيد الفعلي المتوفر قبل إدخال الحركة الحالية وتكتمل العملية بنجاح عند إدخال 5 أو 4 أو أي رقم ضمن حدود الرصيد المتوفر . عذراً على التأخر في اكتشاف الخلل .. والشكر موصول للأستاذ @عبدالله بشير عبدالله على مشاركته وملاحظاته معنا .
    2 points
  16. وعليكم السلام جرب الكود المعدل بالملف تغيير لون الخلايا المحدده بالماوس من خلال اليوزر فورم_085825.xlsm
    2 points
  17. وعليكم السلام ورحمة الله وبركاته الكود المرفق يقوم :- بالغاء حماية الشيتات المستهدفة 123 ثم يتم اظهار الصفوف 1-2 ثم يمسح الصور السابقة بعد ادراج الصور يتم اخفاء الصفوف1-2 ثم حماية الصفحات من جديد 123 استبدل الكود السابق بهذا تم تجربة الكود على 28 صفحة في حدود 3 الى 4 ثانية Private Sub CommandButton13_Click() Dim ws As Worksheet Dim Pic As Shape Dim shp As Shape Dim rng As Range Dim fd As FileDialog Dim imgPath As String Dim i As Long Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .Title = "اختر الصورة المراد إدراجها" .Filters.Clear .Filters.Add "جميع الصور", "*.jpg; *.jpeg; *.png; *.bmp; *.gif; *.tiff" .AllowMultiSelect = False If .Show = -1 Then imgPath = .SelectedItems(1) Else Exit Sub End If End With Application.ScreenUpdating = False On Error Resume Next Application.CommandBars.FindControl(ID:=549).Execute On Error GoTo 0 For Each ws In Worksheets If ws.Name <> "قائمة" And ws.Name <> "مخزن" Then On Error Resume Next ws.Unprotect Password:="123" On Error GoTo 0 ws.Rows("1:2").Hidden = False Set rng = ws.Range("A2:V2") For i = ws.Shapes.Count To 1 Step -1 Set shp = ws.Shapes(i) If shp.Type = msoPicture Or shp.Type = msoLinkedPicture Then On Error Resume Next If Not Intersect(shp.TopLeftCell, rng) Is Nothing Then shp.Delete End If On Error GoTo 0 End If Next i Set Pic = ws.Shapes.AddPicture( _ Filename:=imgPath, _ LinkToFile:=msoFalse, _ SaveWithDocument:=msoTrue, _ Left:=rng.Left, _ Top:=rng.Top, _ Width:=rng.Width, _ Height:=rng.Height) With Pic .LockAspectRatio = msoFalse .Placement = xlMoveAndSize End With ws.Rows("1:2").Hidden = True ws.Protect Password:="123" End If Next ws Application.ScreenUpdating = True MsgBox "تم إدراج الصورة بنجاح!", vbInformation, "تم بنجاح" End Sub كما يمكنك الغاء اكوادالحماية وغيرها من ملفك لانها اصبحث من صمن الكود السابق
    2 points
  18. السلام عليكم ورحمة الله وبركاته من خلال التجربة لملف Data Validation الاول - طلب السائل الكريم يتحقق مع تعديل النمط الى ايقاف كما تصحته في مشاركة لاحقة ولا اعتقد انه يمكن اظافة اي جديد اكثر مما تم عمله هذا حسب اعتقادي والله اعلم تحياتي لكما
    2 points
  19. و عليكم السلام ورحمة الله و بركاته تفضل الملف. ملحوظة تم تعديل الاسماء و أرقام الاقامة لان من غير المنطقي أن تكون كل البيانات متشابهة تماما ماعدا رقم اللوحة مما يفقد البحث بالاسم أو رقم الاقامة فائدته فواز_معدل_للبحث_محدث (2).xlsx
    2 points
  20. يمكننا الإنتظار مشاركات جديدة .. فلا تستعجل بإغلاق الموضوع باختيار الإجابة 🙂
    2 points
  21. 2 points
  22. السلام عليكم ورحمة الله وبركاته تحياتي لك ولاستاذنا Foksh مشكلة الملف به امتددان ادراج صورة.xlsm.xlsx بحذف الامتداد xlsx يعمل الملف لاظافة الخاصية المطلوبة اولا يجب حذف كلمة Private ليصبح اسم الكود Sub Comm() ثانيا يجب أن تكون الصورة موجودة بالفعل داخل القرص D بهذا الاسم بالضبط (عنوان.jpg) ثالتا امتداد الملف هو jpg وليس png أو jpeg؛ لأن عدم تطابق الامتداد سيتسبب في ظهور خطأ عند تشغيل الكود. في حال تغير مكان الضورة او امتدداها قم بالتعديل بالكود اليك الكود بعد اظافة الخاصية xlMoveAndSize نقل الخلايا وتغيير حجمها Sub Comm() Dim ws As Worksheet Dim pic As Object For Each ws In Worksheets Set pic = ws.Pictures.Insert("D:\عنوان.jpg") pic.Placement = xlMoveAndSize Next ws End Sub ادراج صورة.xlsm
    2 points
  23. أخواني وأساتذتي ومعلمينا ( دون استثناء ) أشارككم في هذا الموضوع أداة بسيطة وفعالة قمت بتطويرها لأغراض إنشاء واستعادة نسخ احتياطية من قواعد بيانات اكسيس . ✔️ الهدف الأساسي من الأداة هو توفير طريقة مرنة وآمنة لأخذ نسخ احتياطية من الجداول المهمة بشكل دوري أو عند الحاجة ، وتسهيل استعادتها لاحقاً بنفس البنية والبيانات . صورة من واجهة الأداة :- الواضح من الواجهة ، أن الأداة ستمكنك من :- أولاً :- إنشاء نسخة احتياطية ضمن الإعدادات التي تحددها في زر "خيارات الحفظ" . عند النقر عليه ستجد هذه الإعدادات في الصورة .. مسار الحفظ للنسخ الإحتياطية سيكون فقط في المجلد Backup في المجلد الرئيسي Data الموجود بجانب قاعدة البيانات . نوع الملحق سيكون MDB و DAT . وهما النوعين الأكثر شمولاً واستخداماً في جميع الأفكار التي لها نفس الوظيفة . عدد النسخ التي ستحتفظ بها هو فقط ما تحدده . وسيتم حذف النسخ الأقدم تباعاً . بإمكانك تحديد كلمة مرور لحماية قاعدة بيانات الجداول . ولا ننصح بتغييرها لكل نسخة كي لا تتوه وتفقد بياناتك . إمكانية النسخ التلقائي حسب عدد الأيام أو الساعات الي تريد أخذ نسخة تلقائية فيه . ثانياً :- إنشاء نسخة احتياطية لجداول تقوم بتحديدها - ولك حرية اختيار الجداول في كل نسخة - حيث أنها لن تؤثر على سير عملية الإسترجاع لاحقاً . انظر الصورة للتوضيح :- على اليمين تظهر أسماء الجداول في القاعدة الحالية ( مرتبطة أو محلية ) . ولك الحرية باختيار جداول محددة بالنقر المزدوج على الجدول ، أو تحديد الكل / إلغاء الكل . حسب حاجتك . ثالثاً :- الأزرار كما هي في صورة واجهة الأداة ، تشير إلى :- زر "حفظ نسخة إحتياطية جديدة" :- لإنشاء نسخة إحتياطية حسب الإعدادات اتي تم تحديدها . زر "تحديث بيانات النُسخ الإحتياطية" :- لإعادة ترتيب السجلات في الجدول حسب النسخ الموجودة في مجلد انسخ الإحتياطي . زرا "نُسخ محددة" و "كافة النُسخ" :- لحذف محدد أو لجميع النسخ الإحتياطية . زر "إنشاء" في قسم "نسخة خاصة" :- مخصص لإنشاء نسخة خاصة في مكان يقوم المستخدم بتحديده وليس ضمن المسار المحدد في الإعدادات ، وبإسم متغير كيفما يريد . زر "استرجاع" في قسم "نسخة خاصة" :- مخصص لإسترجاع نسخة يقوم المستخدم بتحديدها بشكل يدوي من خلال مربع حوار اختيار ملف . زر "استرجاع" في قسم "استرجاع النسخة رقم" :- مخصص لاختيار نسخة محددة برقمها . حيث تظهر النسخ التي تم أخذها إحتياطياً ، في أعلى جزء النموذج والتنقل بينها من خلال الزرين < > . رابعاً :- في هذا الإصدار ( V1.0 ) من الأداة على عدم الإعتماد على أي مكتبات خارجية أو من مكتبات أكسيس . حيث تمت التجربة على إصدارات اكسيس ( 2010 فما فوق ) . Backup 2025 - V1.0.accdb.zip :- دائماً يسعدني إبدائكم الرأي والملاحظات حول الأخطاء والمشاكل التي يمكن مواجهتها في أي مشروع يتم تأسيسه في آكسيس أو غيره من لغات البرمجة . أولاً تأكد من وجود جدولي الأداة ( USysMyCopies و USysOptCopies ) عند نسخها الى مشروعك . مع العلم أنها مخفية كجداول نظام ، ويمكنك إظهارها كما في الصورة التالية :- ثانياً ، قم بالدخول الى خيارات الحفظ ، والنقر على زر "انقر لضبط مسار مجلد الحفظ بشكل آلي" لضبط وتحديد مسار مجلد الحفظ الرئيسي . فقط لأول مرة .
    2 points
  24. و عليكم السلام و رحمة الله و بركاته دالة الترحيل كانت موجودة لكن فيها خطأ برمجي (كانت تجلب دائمًا نفس الصنف الأول لكل الصفوف)، بالإضافة لخطأين آخرين: اسم الزبون والتاريخ كانا يسحبان من أعمدة خاطئة. كما أن دالة tafket() المستخدمة للتفقيط غير موجودة أصلاً في الملف (دالة خارجية غير معرفة، لذلك كانت تظهر كخطأ). جرب الملف المرفق الفاتورة(2).xlsx
    2 points
  25. و عليكم السلام ورحمة الله و بركاته هذا الملف من روائع العلامة خبور و هو ملف تعليمي فارغ و لذلك مذكور كلمة السر صراحة و هي 1 و به امكانية حذف الحماية أيضا
    2 points
  26. وعليكم السلام ورحمة الله 🙂 بل التحدي على المتصفح القديم .. وكان التحدي الأكبر هو كيف تجعل المتصفح القديم يفتح الصفحات المصممة بالتقنيات الحديثة Html, Js , Css وأنت تعلم بإن المتصفح القديم لا يدعم ذلك !! ولكن بفضل الله تم كسر هذا القيد (بمساعدة أبو الشباب AI طبعا )
    2 points
  27. وعليكم السلام اخي فادي فكرة جميلة وتوجد الحاجة اليها ، ولكني لم افهم ابداء الرأي المطلوب !! بالنسبة لي هي ادوات للمبرمج ولا يحتاجها المستخدم ، لهذا السبب اخفيها ، واعوض عنها بطريقة اخرى (سواء ازرار او قائمة مختصرة او ...) ، ولكن دائما هناك المسؤول والذي لديه صلاحيات اكثر من المستخدمين ، فقد يحتاج الى ادوات معينة من هذا الشريط ، ولكني سافتحه له في نموذج معين فقط وليس لكامل البرنامج
    2 points
  28. الملف الحالي يفحص الاتصال عند تشغيل البرنامج .. وفي حال غياب القاعدة الخلفية أو وجود انفصال في الشبكة يظهر نموذج الاتصال .. ولكن لو كانت الشبكة عندك تنفصل من حين لآخر .. فهذا يحتاج تقنية مختلفة .. تحتاج لنموذج يفحص الاتصال بالشبكة كل دقيقة مثلا .. وإذا حصل انقطاع يظهر نموذج للمستخدم يخبره بانقطاع الشبكة .. ولكن ما بيحتاج أنه يربط القاعدة الأمامية بالخلفية في هذي الحالة .. 🙂
    2 points
  29. السلام عليكم الموقع التالي: https://www.msaccesstips.com/ فيه مجموعة مواضيع تخص تنصيب الذكاء الاصطناعي محليا على حاسبتك ، والمواصفات المطلوبة لعمل ai على حاسبتك ، ونوع ai المناسب ، ثم يتطرق في موضوع آخر الى عمل نموذج اكسس ليقوم بمحاكاة ai ، ويتطرق في موضوع ثالث لشرح JSON والتوكن والحرارة ضمن بيئة الاكسس ، ويوجد امثلة مرفقة مفتوحة المصدر. للعلم والاستفادة 🙂
    2 points
  30. نعم اعتقد انه من الافضل عمل ذلك ، حتى يكون العملين كفكرتين مستقلتين (كما هو الحال) 🙂
    2 points
  31. عدد القراءات كفيل بأن يجعلني أقوم بمفاجأتكم بنشر موضوع جديد قريباً،، 😉
    2 points
  32. Version 1.1

    37 تنزيل

    السلام عليكم ورحمة الله وبركاته لكسر الروتين وعموم الفائدة 😎👌 أقدم لكم أداة جديدة بفكرة جديدة 🙂 :: أداة إزالة خلفيات الصور :: الهدف من الأداة واضح >> وهو ببساطة إزالة خلفيات الصور >> والناتج صورة بخلفية شفافة بصيغة png . ولها استخدامات كثيرة في الاحتياجات العامة أو لتشذيب الصور قبل إدراجها في برنامج الأكسس مثلا .. أو .. أو .. أو .. عدد ما شئت أنا شخصيا أحتجتها في برنامجي (صانع الشهادات) لإزالة خلفيات التواقيع 🖋️📜 ثم إضافتها للبرنامج كمرفق. الأداة فكرتها بسيطة >> الإتصال بموقع remove.bg المشهور عن طريق ال API والعودة بالناتج بدون الحاجة لفتح الموقع. مفتاح الـAPI الحالي هو خاص بي ويمكنكم استخدامه مباشرة ولكنه محدود ب 50 تحويل لليوم .. في حال رغبتك بوضع مفتاحك الخاص ( وهي خدمة مجانية بالمناسبة ) يمكن تغييره في أول صفحة الكود وقد وضحت الطريقة هناك . 🙂 الملف مفتوح المصدر :: ودعواتكم الطيبة 🙂
    2 points
  33. مداخلة بسيطة مع الأستاذ موسى .. بما انك أخي أحمد متمسك بهذا الطريق ، فلم لا تمرر اسم الصف من خلال الوسيط OpenArgs عند فتح التقرير في الزر btnViewer !! انشئ ليبل وسمه Lbl_Class في التقرير ، واضبط تنسيقه وموضعه كما تريد . وفي حدث عند الفتح في التقرير يصبح :- Private Sub Report_Open(Cancel As Integer) DoCmd.Maximize If Not IsNull(Me.OpenArgs) Then Me.Lbl_Class.Caption = Me.OpenArgs End If End Sub وفي حدث النقر في الزر btnViewer سنعدل إجراء بسيط على جملة فتح التقرير لتصبح مثلاً للصف الأول في النموذج frm_OnlyYou1 :- DoCmd.OpenReport myrep, acPreview, , "onlyyou=true", , "الأول" وهكذا لباقي نماذجك المنفصلة لكل صف .. وهذا ملفك بعد التطبيق أما بخصوص استخدام تقرير واحد ، فالأمر بسيط .. حيث يمكن تمرير اسم الجدول كمتغير داخل استعلام ثابت لجميع الجداول ( على اعتبار ان الحقول لها أسماء ثابتة داخل الجداول كافة ) db.mdb
    1 point
  34. الخبراء الافاضل بعد التحية اشكركم شكر خاص على مساعدتكم لى فى كل مرة احتاج لكم فيها
    1 point
  35. طيب ، شو رأيك نغير الخطة شوي ؟؟ رح نحتاج إلى إعادة إضافة الكمية الحالية E3 إلى نتيجة الـ VLOOKUP لكي نتمكن من المقارنة مع الرصيد المتاح قبل الحركة الحالية . يعني استبدل معادلة Data Validation في العمود E بالمعادلة التالية :- =AND($B3<>"", $D3<>"", OR($D3="شراء", $E3 <= IFERROR(VLOOKUP($B3, المخزن!$B$3:$I$800, 8, FALSE), 0) + IF($D3="بيع", $E3, 0))) جربها وأعطيني النتيجة اذا سمحت ..
    1 point
  36. ما تم تعديله على الملف :- عمود الوارد H (إجمالي المشتريات) في ورقة المخزن :- =SUMIFS('الحركات اليومية'!$E$3:$E$800,'الحركات اليومية'!$B$3:$B$800,$B3,'الحركات اليومية'!$D$3:$D$800,"شراء") عمود الصادر G (إجمالي المبيعات) في ورقة المخزن :- =SUMIFS('الحركات اليومية'!$E$3:$E$800,'الحركات اليومية'!$B$3:$B$800,$B3,'الحركات اليومية'!$D$3:$D$800,"بيع") في ورقة الحركات اليومية تم ضبط Data Validation للعمود E ليصبح :- =OR($D3="شراء",$E3<=VLOOKUP($B3,المخزن!$B$3:$I$800,8,FALSE)) أيضاً في الـ Data Validation تم ضبط رسالة الخطأ لتصبح :- أيضاً في الخلية C3 في ورقة الحركات اليومية ، تم ضبط الخلية لتجلب اسم الصنف تلقائياً من خلال المعادلة :- =IFERROR(VLOOKUP(B3,المخزن!$B$3:$C$800,2,FALSE),"") الآن جرب ملفك بإدخال حركة شراء لصنف معين ، وحركة بيع لهذا الصنف ، ولاحظ عملية تحديث الرصيد له في ورقة المخزن . ومن ثم جرب ادخال حركة بيع لكمية أكبر من رصيد الصنف هذا وراقب النتيجة . الملف جربه علي أكون قد وُفقت في تعديلاتي البسيطة مخزن 1.xlsb
    1 point
  37. حل اخر للطلب لعله يكون المطلوب ويفي بالغرض اذا ارات البحتث من خلال فتره معينه مثلا من يوم 1 الي يوم 10 من هتكون في الخليه e3 الي هتكون في الخليه f3 كما في الصوره المرفقه Copy of جدول ورديات (1).xlsm
    1 point
  38. السلام عليكم جميعا كما اشار الزملاء الافاضل يوجد غموض في الطلب ولكن جسب فهمي لطلبك ان القيم في العمود S تمثل القيمة القصوى لكل سنة مثلا 2026 القيمة القصوى =8500 بناء على هذه الفرضية ان كانت صحيحة اليك المعادلات التي تقوم بالخصم حسب القيمة القصوى المحددة لكل سنة وبشرط وجود كلمة تم امام كل قسط اذا لم يكن هذا طلبك ارجو شرح طلبك بوضوح لتجد تفاعل من الزملاء اكثر ق1.xlsx
    1 point
  39. رأيت أنه من الأفضل فصل فكرتي في موضوع منفص لكي تأخذ فكرة أستاذي العزيز حقها من النتباه .. مع تقديم العذر منك أستاذي العزيز @jjafferr على تطفلي في موضوعك الجميل 🙂
    1 point
  40. اعرض الملف 🖼️ أداة جميلة لإزالة خلفيات الصور | سلسلة هدايا الأكسس | ⭐ 🎁 السلام عليكم ورحمة الله وبركاته لكسر الروتين وعموم الفائدة 😎👌 أقدم لكم أداة جديدة بفكرة جديدة 🙂 :: أداة إزالة خلفيات الصور :: الهدف من الأداة واضح >> وهو ببساطة إزالة خلفيات الصور >> والناتج صورة بخلفية شفافة بصيغة png . ولها استخدامات كثيرة في الاحتياجات العامة أو لتشذيب الصور قبل إدراجها في برنامج الأكسس مثلا .. أو .. أو .. أو .. عدد ما شئت أنا شخصيا أحتجتها في برنامجي (صانع الشهادات) لإزالة خلفيات التواقيع 🖋️📜 ثم إضافتها للبرنامج كمرفق. الأداة فكرتها بسيطة >> الإتصال بموقع remove.bg المشهور عن طريق ال API والعودة بالناتج بدون الحاجة لفتح الموقع. مفتاح الـAPI الحالي هو خاص بي ويمكنكم استخدامه مباشرة ولكنه محدود ب 50 تحويل لليوم .. في حال رغبتك بوضع مفتاحك الخاص ( وهي خدمة مجانية بالمناسبة ) يمكن تغييره في أول صفحة الكود وقد وضحت الطريقة هناك . 🙂 الملف مفتوح المصدر :: ودعواتكم الطيبة 🙂 صاحب الملف Moosak تمت الاضافه 06/22/26 الاقسام قسم الأكسيس  
    1 point
  41. السلام عليكم الاستاذ منتصر عودا حميدا نورت المنتدى ------ عمل جميل ومهم لاضافة جمالية على الرسائل لتعطي للمبرمج مرونة في عمله
    1 point
×
×
  • اضف...

Important Information