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

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

  1. Foksh

    Foksh

    أوفيسنا


    • نقاط

      66

    • Posts

      4307


  2. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      65

    • Posts

      13470


  3. عبدالله بشير عبدالله
  4. Ali Mohamed Ali

    Ali Mohamed Ali

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


    • نقاط

      31

    • Posts

      11645


Popular Content

Showing content with the highest reputation since 11/07/25 in all areas

  1. اولا شكرا لدعاؤك لي ثانيا الكود في الملف السابق يقوم بترتيب الصفحات ذات الارقام وبالتالي ستجد الصفحات الاخرى ذات الحروف وليس الارقام مستثناة وتجدها بجانب بعضها ولكن هناك احتمال الرغبة في استثناء صفخة او صفحات رقمية مثلا تريد استثناء صفخة 4 من الترتيب . هنا سيتم التعديل على الكود باظافة مصفوفة لتجميع الصفخات المستثناة كل ما عليك فعلة هو التعديل في هذا الجزء من الكود حيث اضفت لك صفحات افتراضية في الكود وليس في المصتف مثل "ملخص", "إعدادات", "تعليمات يمكنك تعديلها باي اسم او اظافة صفحات اخرى باي عدد تشاء excludedSheets = Array("الرييييسية", "تجميع", "ملخص", "إعدادات", "تعليمات") اليك الملف بالتعديل ترتيب الصفحات1.xlsm تحياتي
    6 points
  2. السلام عليكم ورحمة الله إليك هذا الحل باستعمال "الذكاء الاصطناعي" (بالمعادلات وبالأكواد -بتصرف-) أرجو أن يفي الغرض المطلوب... ملف العمل.xlsm
    5 points
  3. السلام عليكم خسب المثال المرفق يبدو أنك تريد دالة للتقريب إلى أقرب 0.1 (أعشار)، وليس معادلة باقي القسمة (mod) التي تعمل عادة مع الأعداد الصحيحة. =CEILING(A2; 0.1) =ROUNDUP(A2*10;0)/10 تقريب.xlsx
    5 points
  4. وعليكم السلام ورخمة الله وبركاته اليك الكود Sub ترتيب_الصفخات() Application.ScreenUpdating = False Application.DisplayAlerts = False On Error GoTo ErrorHandler Dim ws As Worksheet Dim dict As Object Dim key As Variant Dim sortedKeys() As Variant Dim i As Long, j As Long Dim temp As Variant Dim excludedSheets As Collection Dim mainSheet As String mainSheet = "الرييييسية" Set excludedSheets = New Collection excludedSheets.Add mainSheet excludedSheets.Add "تجميع" Set dict = CreateObject("Scripting.Dictionary") For Each ws In ThisWorkbook.Worksheets If Not IsInCollection(excludedSheets, ws.Name) Then If IsNumeric(ws.Name) Then dict.Add CLng(ws.Name), ws.Name End If End If Next ws sortedKeys = dict.Keys For i = LBound(sortedKeys) To UBound(sortedKeys) - 1 For j = i + 1 To UBound(sortedKeys) If sortedKeys(i) > sortedKeys(j) Then temp = sortedKeys(i) sortedKeys(i) = sortedKeys(j) sortedKeys(j) = temp End If Next j Next i For i = LBound(sortedKeys) To UBound(sortedKeys) Worksheets(dict(sortedKeys(i))).Move After:=Worksheets(Worksheets.Count) Next i Worksheets(mainSheet).Activate Application.ScreenUpdating = True Application.DisplayAlerts = True ' MsgBox "تم ترتيب " & dict.Count & " ورقة رقمية بنجاح! ", vbInformation Exit Sub ErrorHandler: Application.ScreenUpdating = True Application.DisplayAlerts = True MsgBox "حدث خطأ: " & Err.Description, vbCritical End Sub Function IsInCollection(col As Collection, item As String) As Boolean Dim obj As Variant On Error GoTo NotInCollection IsInCollection = True obj = col(item) Exit Function NotInCollection: IsInCollection = False End Function ترتيب الصفحات.xlsm
    4 points
  5. وعليكم السلام ورحمة الله وبركاته =IFERROR(AGGREGATE(15;6;A4:A30;ROW($A$1));"") السبب الرئيسي هو أن ROW($A$1) ثابت دائماً وكذلك النطاق يجب ثتبيته بحيث لا يتغير عند السحب ليصبح A$4:A$30 بدل A4:A30 ولحل المشكلة اختر احدى المعادلات =IFERROR(AGGREGATE(15;6;A$4:A$30;ROW(A1)-ROW(A$1)+1);"") =IFERROR(AGGREGATE(15;6;$A$4:$A$30;ROW(A1));"") =IFERROR(AGGREGATE(15;6;$A$4:$A$30;ROW(A1:A1));"") =IFERROR(AGGREGATE(15;6;$A$4:$A$30;ROW(A4)-ROW($A$4)+1);"") اليك الملف وبه تطبيق المعادلات الاربعة السابقة ntega_elec_new.xlsb
    4 points
  6. السلام عليكم ورحمة الله وبركاته هذه دعوة كريمة لتجربة الأداة الجديدة والفريدة من نوعها : دكتور ال VBA وضائف الأداة : 1- تحويل الكود إلى صيغة متوافقة مع النواتين 32 و 64 بت. 2- تصحيح الأخطاء البرمجية في الكود. 3- تنسيق وترتيب الكود شكليا. 4- كتابة التعليقات وشرح للكود باللغتين العربية والإنجليزية. 5- إضافة صائد الأخطاء للكود وذلك لتعقب الأخطاء البرمجية. 6- إضافة ترقيم لأسطر الكود. يمكنك اختيار واحد من هذه الوظائف أو تختار من بينها ما تريده. الأداة مخصصة لأكواد ال VBA وتعتمد على قدرات الذكاء الاصطناعي لإعطاء نتائج دقيقة ومبهرة .. 😁✌🏻 اختصر على نفسك الوقت والجهد واعمل بذكاء 😉👌🏻 رابط الأداة : https://vba-code-doctor-471932697586.us-west1.run.app/ يمكنك فتحها في الهاتف أو الحاسوب على راحتك 😎🌷 جربوها وعطوني رأيكم 😇✌🏻
    3 points
  7. السلام عليكم بفضل الله تمكنت من ايجاد طريقة ممتازة ومحكمة للتعامل مع توقيع الحضور والانصراف للفترة المسائية الممتدة الى ما بعد منتصف الليل ودخول يوم جديد انتظروني بعض الوقت كي اجري تجاربي النهائية على العمليات وعلى المخرجات .
    3 points
  8. وعليكم السلام ورحمة الله وبركاته الى جانب الحلول التي ارفقها استاذنا الفاضل hegazee اليك حل اخر بالكود في حدث الورقة Private Sub Worksheet_Change(ByVal Target As Range) Dim rngF As Range, rngG As Range Dim rngB As Range, rngC As Range Dim pos As Variant Set rngF = Me.Range("F2") ' Set rngG = Me.Range("G2") Set rngB = Me.Range("B2:B1000") Set rngC = Me.Range("C2:C1000") If Not Intersect(Target, rngF) Is Nothing Then Application.EnableEvents = False pos = Application.Match(rngF.Value, rngB, 0) If Not IsError(pos) Then rngG.Value = Application.Index(rngC, pos) Else rngG.Value = "" End If Application.EnableEvents = True End If rngG.Select End Sub data.xlsb
    3 points
  9. عذرا لم انتبه ان قي طلبك طباعة متعددة الطريقة الاولى زر print all اكتب كود الشركة بداية الطباعة في الخلية P2 ونهاية الطباعة في Q2 الطريقة السابقة لطباعة الارقام المتسلسلة وراء بعضها الطريقة الثانية عن طريق فورم زر طباعة خسب الاختيار وهي تغنيك عن كل الازرار وعن الطريقة الاولى حيث يمكن الطباعة لموظف واخد او الطباعة للكل او الطباعة المتعددة خسب الاختيار سواء الارقام متصلة ام منفصلة اختر ما تراه متاسب لطلبك مرتبات شركة نقل البضائع فنيين عن شهر نوفمبر 2025 (1).xlsm
    3 points
  10. اعجني الموضوع من اول انشغالي بالاكسيس تيقنت ان الاكسيس من اضغف الحمايات لكني قكرة بان اسال الذكاء الصناعي سالت CHATGPT عن فكرة مجنونة لم يفكر بها احد لحماية الجداول ادعوا اخواني لتجربة الفكر المقترحة وانا ساجربها معكم مع توفر الوقت لدي سارفق الاجابة والسؤال الذي سالته انقر هنا
    3 points
  11. Version 1.0.0

    54 تنزيل

    أقدم لكم اليوم أداة تلوين خلفية النماذج بألوان متدرجة والتي تقوم بمنح النماذج خلفية ملونة بطريقة جميلة حيث تقوم فيها بإختيار لونين ليتم دمجهما والحصول على خلفية تتكون من ألوان متدرجة بين هذين اللونين ويمكن تحديد إتجاه التدرج (أفقياً - عمودياً - قطرياً) إستخدام الأداة سهل للغاية ولن يتطلب أي مهارات حيث أن الأداة تقوم بكل العمل تقريباً ما عليكم سوى تحديد الألوان والإتجاه وستقوم الأداة بتعميم التنسيق على بقية النماذج ضمن التطبيق. مرفق لكم مجلد يحتوي على نسخة توضيحية لتجربتها ومعرفة طريقة عملها ونسخة الفالب وتحتوي على الكائنات المطلوب إستيرادها لإستخدامها في تطبيقاتكم أرجو أن تنال هذه الأداة إعجابكم تحياتي
    3 points
  12. السلام عليكم ورحمة الله راجع المعادلات في الأعمدة المخفية من العمود B إلى العمود K من شيت "دفتر اليومية" لأن منها ظهر المشكل، وقمت بتصحيح هذه المعادلات بالسحب إلى الأسفل حسب ما فهمت في الملف المرفق. اليومية_034849.rar
    3 points
  13. السلام عليكم ورحمة الله لست أدري إن كنت قد فهمت المطلوب. ألق نظرة على الملف المرفق عبدالحي توزيع نسب (1).xlsx
    3 points
  14. نعم الفكرة واضحة .. وجميلة .. وجديدة على كاتب هذه الكلمات .. جزيت خيرا
    3 points
  15. 3 points
  16. بعد اذن استاذي @Moosak وهذا تصوري للتعامل مع الجداول المرتبطة . القاعدة الرئيسية :- الجدول المطلوبة اساسياً :- (tbl_DesignerPassword) والنموذج المطلوب (frm_DesignerPassword) بالاضافة الي جداول نظامك التي تريدها بالقاعدة الخلفية . ونماذج نظامك كما تريد القاعدة الخلفية :- استيراد بلنك كل الجداول بالقاعد الاساسية التي تدير بها القاعدة الخلفية ولا تنسي الجدول (tbl_DesignerPassword) . استيراد النماذج التي تريدها وتشغيلها من النموذج (frmSwitchBoard) فهو اساسي بالنظام مع النموذجان (Shift) و (FormKeys) . بعد الاستيراد لاتنسي غلق الجداول وعدم تفعيل الشيفت . ملحوظة :- استخدم القاعدة الخلفية بالمرفق وغير اسمها كما تحب لأن بها اعدادات أخرى مخفية خاصة باعدادات ال__ (Ribbon). عند فتح القاعدة الخلفية سيفتح على النموذج :- عند الضغط على الزر (S) سيفتح النموذج (Shift) كما بالجدول اذا ادخلت الباس (1001) ويمكن تغيير بالجدول سيمكنك من تفعيل الشفت اذا خطأ أو خالي عدم تفعيل الشفت . عند الضغط على الزر (HideUnHideTables) اذا ادخلت الباس (tariq1991) ويمكن تغيير بالجدول سيمكنك من اظهار الجداول والاستعلامات اذا خطأ أو خالي عدم اظهرها. اليك المرفق للتجريب وانا حاضر لاي استفسار . Khalifa Test.rar
    3 points
  17. وعليكم السلام ورحمة الله وبركاته 🙂 جرب طريقتي في حماية قاعدة البيانات .. أنقل جميع مكونات القاعدة لبرنامجك وشغله .. 🙂 وهذي طريقة ضبط الإعدادات .. لفتح البرنامج في وضع التصميم : كلمة المرور لفتح الإعدادات : 123 ( قم بتغييرها لاحقا ) الحماية تشمل : 1- إخفاء الجداول وجميع مكونات البرنامج . 2- منع الفتح بزر الشفت Shift . 2- منع إضهار لوحة التحكم عند الضغط على F11 . وهذا يعتبر الحد الأدنى والأشهر في حماية قاعدة البيانات .. ويمكنك التعمق للوسائل الأكثر احترافية مثل حماية صفحة الأكواد بكلمة مرور وحفظ الملف بصيغة accde وحماية الملف بكلمة مرور وغيرها .. دمتم سالمين 🙂 Database Security Template.accdb
    3 points
  18. هذا مثالي : لن يتم الحذف الا من خلال الزر فقط حتى لو صنعت زرا جديدا للحذف فلن تتمكن FMK2.rar
    3 points
  19. وعليكم السلام تفضل هذا الملف ربما يفيدك ويكون به المطلوب ان شاء الله وبالتوفيق المحطة.xlsm
    3 points
  20. وعليكم السلام ورحمة الله وبركاته .. أخي بلال أنت عضو فضي ( نتمنى لك المزيد من الدرجات ) ، وما زلت - متأسفاً منك - لا تهتم لأي ملاحظات يتم طرحها خلال المشاركات أو قوانين المنتدى . العنوان :- نكتشف أن مقصده ومعناه مختلف عما تريده أنت . الشرح :- تبخل على أخوانك في المنتدى بالشرح وتكتفي بكلمات لا تتعدى أصابع اليد . إرفاق ملف :- برأيك هل الصورة و 8 كلمات كافيات لتوصيل ما تفكر به لمن يقرأ الموضوع دون ارفاق ملف !!! شكراً لك على رحابة صدرك مراراً وتكراراً في تقبل الملاحظات التي ليس لها هدف إلا أن تحظى بطريق سليم لتوصيل معلومتك
    2 points
  21. تفضل Sub ToggleColumns() Dim action As String Dim colsInput As String Dim colArray() As String Dim colItem As Variant Dim answer As VbMsgBoxResult Dim invalidInput As Boolean ' مربع حوار لتحديد الإجراء (إخفاء أو إظهار) answer = MsgBox("هل تريد إخفاء الأعمدة؟" & vbCrLf & vbCrLf & "اضغط 'Yes' للإخفاء، 'No' للإظهار.", vbYesNoCancel + vbQuestion, "تحديد الإجراء") If answer = vbCancel Then Exit Sub ' الخروج إذا ضغط المستخدم على "Cancel" ElseIf answer = vbYes Then action = "إخفاء" Else action = "إظهار" End If ' مربع إدخال لطلب الأعمدة من المستخدم colsInput = InputBox("الرجاء إدخال الأعمدة التي تريد " & action & "ها." & vbCrLf & vbCrLf & "أمثلة:" & vbCrLf & "عمود واحد: B" & vbCrLf & "أعمدة متجاورة: B:D" & vbCrLf & "أعمدة متفرقة: B,D,F", "تحديد الأعمدة") ' الخروج إذا كان الإدخال فارغًا If colsInput = "" Then Exit Sub ' إزالة أي مسافات زائدة وتقسيم الإدخال عند الفاصلة colArray = Split(Replace(colsInput, " ", ""), ",") invalidInput = False On Error Resume Next ' تجاهل الأخطاء مؤقتًا للتحقق من صحة الإدخال ' المرور على كل عنصر أدخله المستخدم For Each colItem In colArray If colItem <> "" Then ' التحقق من أن كل جزء من الإدخال يمثل نطاقًا صالحًا If Columns(colItem).Count = 0 Then invalidInput = True Exit For End If End If Next colItem On Error GoTo 0 ' إعادة تفعيل معالجة الأخطاء ' إذا كان هناك إدخال غير صالح، أظهر رسالة خطأ If invalidInput Then MsgBox "الإدخال '" & colItem & "' غير صالح. الرجاء التأكد من إدخال أسماء أعمدة صحيحة.", vbCritical, "خطأ في الإدخال" Exit Sub End If ' تنفيذ الإجراء على كل عمود أو نطاق For Each colItem In colArray If colItem <> "" Then If action = "إخفاء" Then Columns(colItem).Hidden = True Else Columns(colItem).Hidden = False End If End If Next colItem MsgBox "تم " & action & " الأعمدة بنجاح!", vbInformation, "اكتمل الإجراء" End Sub
    2 points
  22. السلام عليكم ورحمة الله جرب تطبيق هذا التنسيق على التاريخ لعله يفي بالغرض : [$-ar-DZ,201]dddd yyyy/mm/dd
    2 points
  23. بعد إذن مهندسنا الغالي .. إذا كان ملفك بصيغة Accde فلن تصل للأكواد أبداً .
    2 points
  24. تفضل التعديل التالي .. جربه وأخبرني بالنتيجة . 123452025.zip
    2 points
  25. رداً على هذه النقطة ، وحيث أنه سبق تنفيذها سابقاً .. جرب المرفق نفسه بعد التعديل بحيث سيتم فقط عرض الخطوط العربية ( أو التي تتعامل مع الكاركتر العربي ) في الكومبوبوكس . مع إضافة الفرز التصاعدي للأسماء :- Db3.zip
    2 points
  26. ما شاء الله تبارك الرحمن 🙂 جميل جدا تنوع الأفكار في نفس المجال 😊👌 وأنا أيضا لدي برنامج خاص بتصميم الشهادات وتنسيقها وتوليد الشهادات لمجموعة كبيرة من الطلاب أو المتدربين أو المستلمين بشكل عام ، وكذلك يقوم بإرسال الشهادات بالبريد الإلكتروني لكل المستهدفين ( كل متدرب أو طالب يستلم شهادته) ، وأيضا يقوم بحفظ جميع الشهادات على شكل Pdf دفعة واحدة .. 🙂 مع إمكانيات تنسيق النص ( الخطوط والألوان ) بشكل حر ، وإضافة التواقيع ، وتغيير إطارات البرنامج .. إلخ تصميم وتنسيق النصوص بكل أريحية إضافة المتدربين دفعة واحدة بعدد لا محدود معاينة بشكل مباشر اواجهة البرنامج مع خيارات البحث وعرض تقارير وإحصائيات لتحميل البرنامج : تنصيب برنامج صانع الشهادات الإصدار الثالث 3.0.zip
    2 points
  27. وانا عند وعدى هذه مشاركتى 1- بعد فك الضغط انقل الصور الى المجلد : TempResources 2- قم بفتح قاعدة البيانات 3- فى المستقبل فقط اضف اى صور الى المجلد : TempResources فى جزء لم انته منه بعد حفظ الاعدادت كقوالب او حفظ الاعدادت لكل شهادة ان اردنا ان تكون كقاعدة بيانات للاحتفاظ بالبيانت وليس مجرد موديولر لعمل الشهادات ويتبقى الجزء الاخير انا افكر فى الطباعة من النموذج الفرعى بشكل مباشر بدون اى تقارير الى لقاء قريب بعد ان اعرف ارائكم فى التطبيق والافكار البسيطة المتواضعة
    2 points
  28. بل اعجبني المشهد .. سلمت اناملك يا سلام .. زاد حماسي .. احب المفاجآت في مثل هذه المواضيع
    2 points
  29. فضلت ابحث فى المنتدى عن موضوع صفحة رئيسية لاستاذ ابو جودي الى ان وجدت الموضوع طيب المرفق الاول على طريقة ابو جودي والمرفق الثانى من هذا الموضوع والذى يخص الاستاذ Foksh قمت بتعديل بسيط واضافة بسيطة جدا قائمة جانبية على طريقة ابو جودى.zip قائمة جانبية على طريقة الاستاذ Foksh.zip
    2 points
  30. تم المطلوب في الملف المرفق... حافز.xlsx
    2 points
  31. انا طريقتي تختلف عن الاخوان حيث قمت بإظهار الجدول نفسه كما بالصورة وللقيام بذلك قم بتنفيذ الخطوات كالتالي 1- إنسخ الملف تحت القرص D مباشرة (يمكن نسخه إلى أي مكان ولكن هكذا سيكون المسار قصير) 2- إفتح الملف وقم بإنشاء الاستعلام التالي (هذه الخطوة غير مهمة لكم لإني سبق واستخرجت قيمة العمود المطلوب ووضعتها في الكود ولكني ذكرتها للتعرف على الخطوات) SELECT MSysObjects.Flags, MSysObjects.Name, MSysObjects.Type FROM MSysObjects WHERE ( ((MSysObjects.Name) NOT LIKE "MSys*") AND ((MSysObjects.Type) = 1) ); من خلال هذا الاستعلام سنتعرف على أي جدول Type=1 ولايبدأ بالأحرف MSys لتظهر لنا النتيجة كما بالصورة مايهمنا هنا هي قيمة العمود الأول Flags بعد ذلك قم بإغلاق التطبيق بدون حفظ اي شيء 3- إفتح أي قاعدة بيانات أخرى (سواء قاعدة بيانات فارغة أو مستخدمة لايهم) وفي أي وحدة نمطية (جديدة أو فيها اكواد لايهم) والصق فيها الإجراء التالي Sub sbUnHideTables() Dim app As Access.Application Dim wks As Workspace Dim db As dao.Database Dim rst As dao.Recordset Dim tdf As TableDef Set app = New Access.Application Set wks = app.DBEngine(0) 'الإصدار 64 Set db = wks.OpenDatabase("D:\HideTBL V1-64.accde") 'مسار الملف 'الإصدار 32 'Set db = wks.OpenDatabase("D:\HideTBL V1-32.accde") 'مسار الملف For Each tdf In db.TableDefs If tdf.Attributes = -2147483645 Then tdf.Attributes = 0 'تغيير قيمة العمود Flags Next tdf Set db = Nothing End Sub 4- انقر الزر F5 لتشغيل الإجراء حيث سيقوم بتغيير قيمة العمود Flags إلى القيمة صفر 5- اغلق قاعدة البيانات التي قمنا بتنفيذ الكود فيها (حفظ الكود من عدمه راجع لك) 6- الان إذهب إلى القرص D وقم بفتح الملف (HideTBL V1-64.accde او HideTBL V1-32.accde وفقاً لإصدار أوفيس لديك) لتجد أن الجدول قد ظهر في جزء التنقل تحياتي
    2 points
  32. بعد التفكير في سؤالك اخي @Moosak أعتقد أنه بالإمكان الحصول على نفس النتيجة بطريقة غير مباشرة فإذا ماجعلنا خلفية مربعات التسمية ومربعات النص شفافة وبسطرين برمجيين لزر الأمر يمكننا الحصول على نفس النتيجة كما بالصورة فهل هذا هو ماكنت تقصده في سؤالك ؟
    2 points
  33. السلام عليكم ورحمة الله تم التعديل على معادلاتك (معادلات الصفيف) في الملف لتتماشى مع طلبك دون استخدام الفلترة أو ماكرو... ألق نظرة على الملف المرفق. ID.xlsx
    2 points
  34. شكرا على المجاملة اللطيفة عملك هو البحر ,, ويلزم امتلاك الادوات اللازمة لمن اراد خوض غماره . اما فكرتي فهي تقليدية .. الطريقة القديمة المعتادة .. رقم النسخة ورقم التسجيل
    2 points
  35. استاذ @moho58 برفق اليك مرفق من أعمال استاذنا @ابو جودي انا شخصياً بستعمله . ملاءمة عناصر النموذج حسب حجم النموذج.rar
    2 points
  36. اخي الكريم من الممارسات الجيدة عند تصميم قواعد البيانات العمل على تقليل حجم البيانات التي يتم تخزينها بقدر الإمكان فمثلاً لماذا نقوم بحفظ الاجمالي في الجدول وتضخيم حجم البيانات المحفوظة فيه ونحن بإمكاننا الحصول على نفس النتيجة بواسطة الإستعلامات ارفق لك ملفك بعد إضافة إستعلام والذي إذا فتحته جنبا الى جنب مع الجدول فلن تجد أي فرق إلا آخر عمود والذي يحتوي الإجمالي المطلوب بالتالي يمكنك إستخدام هذا الإستعلام بدلا من الجدول تحياتي Database.accdb
    2 points
  37. قريباً .. التحدي الصعب بتطبيق لعبة الدومينو بواسطة آكسيس بأسلوب السحب والإفلات وتطبيق اللعبة الحقيقية على أرض آكسيس 😅 لمحة مصورة من اللعبة :-
    2 points
  38. جميل جدا تحدي الذات والتنافس معها .. 😊👌 أحييك على هذي الروح المثابرة 😊🌹
    2 points
  39. نظراَ لوجود أسماء متشابهة فإننا نقوم بتمييز كل إسم بفاصلة منقوطة في بدايته واخره وذلك حتى لايتم ظهور أسماء اخرى يكون الاسم المطلوب جزءاً منها فمثلا لو تلاحظ يوجد شركة بإسم فيجن واخرى بإسم دوت فيجن فإذا كان المطلوب هي الشركة فيجن فقط فلو كان المعيار هكذا Like "*فيجن*" فستظهر شركة دوت فيجن لإنها مستوفية للمعيار ولكن عندما يكون المعيار هكذا Like "*;فيجن;*" فهذا معناه أننا تجاهلنا ظهور سجلات غير مطلوبة ارجو أن أكون قد وضحت الفكرة
    2 points
  40. جرب المرفق بعد التعديل لعله المطلوب OK3 الكشوف.xlsb
    2 points
  41. جرب المرفق لعله المطلوب OK الكشوف.xlsb
    2 points
  42. اعرض الملف إداة إنشاء تعليمات مخصصة لتطبيقك ليظهر كالبرامج المحترفة {سلسلة الأدوات المساعدة المخصصة} تواصلاً لهذه السلسلة أقدم لكم اليوم أداة رائعة تقوم بإضافة التعليمات المساعدة لتطبيقات الأكسس لتظهر بمظهر البرامج الإحترافية حيث تسمح لكم الأداة بإنشاء ملف تعليمات مقسم إلى عناوين رئيسية تحتوي على مواضيع فرعية بحيث يكون لكل موضوع فرعي التعليمات الخاصة به مرفق لكم مجلد يحتوي على ثلاثة ملفات 1 - القالب وهو نسخة فارغة تحتوي على الكائنات الضرورية والتي يتم إستيرادها إلى التطبيق الخاص بكم (ويمكن إستخدامه في إنشاء التعليمات لأي تطبيق وإستيراد الكائنات المطلوبة بعد الإنتهاء كتابة كل التعليمات الخاصة بالتطبيق حيث يوجد هناك ثلاثة نماذج لن تحتاجونها إلى في نسخة التطوير ويمكن الإستغناء عنها في الإصدار المخصص للمستخدم النهائي) 2 - عرض توضيحي يوضح لكم طريقة العمل بالأداة والذي أرجو أن يتم التركيز على الخطوات الموضحة فيه 3 - مثال عملي قمت فيه بتوضيح الطرق المختلفة للإستفادة من الأداة في مثال مشابه للواقع أرجو أن تكون هذه الأداة إضافة مفيدة لكل الإعضاء تحياتي صاحب الملف منتصر الانسي تمت الاضافه 11/09/25 الاقسام قسم الأكسيس  
    2 points
  43. السلام عليكم اليك التعديل المصنف2.xlsm
    2 points
  44. وعليكم السلام ورحمة الله وبركاتة لم امر بهذه التجربة سابقا فوجهت السؤال الى chatgpt فكانت الاجابة الرابط الذي أرسلته 👇 🔗 https://www.microsoft.com/fr-fr/download/details.aspx?id=10019 هو الرابط الرسمي والآمن من موقع Microsoft لتحميل: Microsoft Visual Basic 6.0 Common Controls (SP6) ويحتوي على ملفات: MSCOMCTL.OCX COMCTL32.OCX وهما المسؤولان عن أدوات مثل ListView، TreeView، ImageList، ProgressBar …إلخ 🧩 الخطوات بالتفصيل (بالفرنسية + توضيح بالعربية) 🪄 1. Télécharger le fichier بعد تحميل الملف من الرابط الرسمي: سيكون اسمه تقريبًا: VisualBasic6-KB896559-v1-FRA.exe 📂 2. Créer un dossier de travail أنشئ مجلدًا مؤقتًا لتضع فيه الملفات المستخرجة من الملف السابق، ⚙️ 3. Extraire le contenu sans installation افتح موجه الاوامر Invite de commandes كمسؤول (Démarrer → cmd → clic droit → Exécuter en tant qu’administrateur) ثم اكتب الأمر التالي (كلّه في سطر واحد 👇): VB6.0-KB896559-v6.1.98.46-FRA.exe /T:C:\VB6Controls /C 📁 4. Vérifier le contenu du dossier اذهب إلى المجلد الذي أنشأته: ستجد بداخله عدة ملفات من بينها: MSCOMCTL.OCX COMCTL32.OCX 🚀 5. Copier les fichiers vers le dossier système حسب نوع نظامك: نوع النظام المجلد الذي تنسخ إليه Windows 32 bits C:\Windows\System32\ Windows 64 bits C:\Windows\SysWOW64\ انسخ الملفين MSCOMCTL.OCX و COMCTL32.OCX إلى المجلد المناسب. 🔧 6. Enregistrer les contrôles (Regsvr32) افتح Invite de commandes كمسؤول مجددًا، ثم نفّذ الأوامر التالية: 👉 على Windows 64 bits: regsvr32 C:\Windows\SysWOW64\MSCOMCTL.OCX regsvr32 C:\Windows\SysWOW64\COMCTL32.OCX 👉 على Windows 32 bits: regsvr32 C:\Windows\System32\MSCOMCTL.OCX regsvr32 C:\Windows\System32\COMCTL32.OCX ستظهر رسالة: DllRegisterServer dans MSCOMCTL.OCX réussi. وهذا يعني أن التثبيت تم بنجاح ✅ 🧰 7. Vérifier dans Excel 2013 افتح Excel اضغط Alt + F11 لفتح محرر VBA اختر Outils → Contrôles supplémentaires... فعّل الخيار: ✅ Microsoft Windows Common Controls 6.0 (SP6) اضغط OK الآن يمكنك استخدام ListView, TreeView, ImageList, إلخ.
    2 points
  45. و عليكم السلام ورحمة الله و بركاته تفضل الحل بطريقتين الأول خاصة بنسخ الأوفيس الحديثة و الثانية بالنسخ القديمة Base des donnes (2).xlsx
    2 points
  46. احدى الطرق مثلا في مثالي المرفق اعلاه 1- نمنع الحذف من خصائص النموذج .. لسان التبويب /بيانات 2 - نضع سطرا للسماح بالحذف قبل دالة الحذف في الكود .. وسطرا للمنع بعدها هكذا : Me.AllowDeletions = True DoCmd.RunCommand acCmdDeleteRecord Me.AllowDeletions = False
    2 points
  47. مع اني لست من مناصري استخدام الاكسس خارج اطار قواعد البيانات ولكن الإبداع الذي اراه في هذا العمل يستحق الإعجاب والتقدير فعلاً الأخت @hanan_ms مبدعة وتستحق ان تكون ضمن خبراء الموقع لانها دائما تثبت أن بالإمكان استخدام الاكسس لوظائف اخرى الى جانب قواعد البيانات وعندما أرى مثل هذا التمكن في البرمجة كما في هذا الموضوع او مواضيع الاخوة @Foksh و @jjafferr و @Moosak و @ابوخليل وبقية الاخوة الذين لايسع المجال هنا لذكرهم فلسان حالي كما يقول المثل (كلما قلنا عساها تنجلي .. قالت الايام هذا مبتداها 🫣) وان طريق التعلم مازال طويلاً شكرا لمبدعي المنتدى لكل ماتقدموه تحياتي
    2 points
  48. المطلوب الأول هو من جنس المطلوب الثاني ولا داعي لتكرار الجداول المعادلات المستخدمة هي من نوع الصفيف وليست معادلات عادية تفضل example1.xlsx
    2 points
×
×
  • اضف...

Important Information