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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      9

    • Posts

      9,871


  2. عمر ضاحى

    عمر ضاحى

    الخبراء


    • نقاط

      4

    • Posts

      1,156


  3. Foksh

    Foksh

    الخبراء


    • نقاط

      3

    • Posts

      2,357


  4. محمد هشام.

    محمد هشام.

    الخبراء


    • نقاط

      3

    • Posts

      1,544


Popular Content

Showing content with the highest reputation on 30 أكت, 2024 in all areas

  1. السلام عليكم 🙂 رجاء الرجوع الى النسخة الاولى من هذا الموضوع لفهم تفاصيل الكود . عرضت عليكم جميع التفاصيل في عمل حدث الـ Data Macro ، فكان على المبرمج ان يكتب جميع خطوات الكود لكل حقل ولكل حدث ، يدويا !! وهنا اعطيكم طريقة طريقة عمله برمجيا (يعني المبرمج ما عنده عذر من الان ان لا يستخدم هذه الاداة في برامجه 🙂 ). هذه واجهة وكائنات البرنامج: . 9. نقوم بالنقر على الزر رقم 9 مرة واحدة فقط ، فيقوم بنسخ الجدول جدول tbl_x_AuditTrail فارغ ، والوحدة النمطية mod_UserName_PcName ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 1. جدول tbl_x_AuditTrail فارغ ، وسيتم عمل نسخة منه ومن الوحدة النمطية mod_UserName_PcName عند النقر على الزر رقم 9 ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 2. يجب اختيار قاعدة البيانات التي تريد عمل احداث الجداول عن طريق الـ Data Macro فيها ، وسيتم ظهور اسم قاعدة البيانات في الرقم 3 ، وفي نفس الوقت سيتم ظهور اسماء جداولها في الرقم 4 ، 4. اختار الجدول الذي تريد عمل الاحداث عليه ، ومنها ستظهر اسماء حقوله في الرقم 5 ، 5. تختار اسماء الحقول التي تريد ان تتابع متغيراتها (وهو اساس هذا البرنامج) ، وتستطيع اختيار جميع الحقول لهذا الحدث بالنقر على الزر 6 : 5.1 لتسجيل وحفظ متغير الحقل عند اضافة سجل جديد (الحاق سجل جديد) ، 5.2 لتسجيل وحفظ متغير الحقل عند عمل تغيير على قيمة الحقل (بعد تحديث الحقل) ، 5.3 لتسجيل وحفظ متغير الحقل عند حذف السجل ، 7. يجب اختيار حقل المفتاح الاساسي في الجدول ، 8. عند الانتهاء من الاختيارات ، ننقر على الزر رقم 8 ، فيقوم بعمل الـ Data Macro لجميع الحقول في الجدول الذي تم اختياره ، وستاتيك رسالة تؤكد انتهاء العمل. وللعمل على حقول جدول آخر ، ابدأ من الرقم 4 اعلاه مرة اخرى. هنا سأعطي مثال عن طريقة العمل ، والنتائج: هذه قاعدة البيانات التي ساعمل عليها ، ونرى انه لا يوجد بها الجدول tbl_x_AuditTrail فارغ ، ولا الوحدة النمطية mod_UserName_PcName ، ولا توجد اي احداث في المربع الاحمر : . خطوات العمل: . والنتيجة في قاعدة البيانات الاخرى: . والان لنرى عندما نعمل اي تغيير في المتغيرات: . هنا نرى ان الاحداث الثلاثة موجودة في هذا الجدول ، وطبعا في الجدول الآخر كذلك : . وهنا نقارن النتائج . جعفر Make_AuditTrail_XML_02.zip
    4 points
  2. هاي من طيب اصلك ، بس عطني اللوكيشن وبطرش لك الشباب بالبخور
    2 points
  3. بارك الله فيك اخي الاستاذ @jjafferr شامم ريحة بخور .. من وين الريحة الزينة هذه ؟؟؟
    2 points
  4. السلام عليكم 🙂 شكرا اخوي @kanory ، والان عملت قاعدة بيانات بها نموذج بقوم بالعمل :
    2 points
  5. السلام عليكم مداخلة الاخ شايب متعلقة بعنوان الموضوع لذا ومع اعجاب استاذنا شايب بالمشاركة الا انه سوف يشير باختصار الى التزامن في اكس وفي اصدارات الويندوز للمستخدمين واصدارات ويندوز سيرفر عدد المستخدمين المتزامنين في قاعدة بيانات اكسس هو 255 مستخدم وهذا العدد لا يمكن الوصول اليه الا في حالات خاصة وسيتم التطرق لذلك لاحقا عدد المستخدمين في مجلد المشاركة لاصدارات ويندوز للمستخدمين بمختلف اصداراتها هو 20 مستخدم فقط وهنا نجد اننا لن نستطيع ان نصل الى الحد الاقصى لمزامنة الاكسس عدد المستخدمين المتزامنين لمجلد المشاركة في ويندوز سيرفر هو 16777 مستخدم وهذا العدد ايضا محكوم بعدة امور منها وحدة المعالجة المركزية الذاكرة القرص الصلب ملف الذاكرة الافتراضية موارد الشبكة اخيرا يتضح ان حاجز العشرين مستخدم لايمكن تجاوزه الا باستخدام احد اصدارات ويندوز سيرفر
    2 points
  6. 2 points
  7. وعليكم السلام ورحمة الله تعالى وبركاته جرب هدا Dim i As Integer Dim WS As Worksheet: Set WS = Sheet5 For i = 2 To 30 WS.Cells(i - 1, 3).Value = Me.Controls("TextBox" & i).Value Next i
    2 points
  8. المشكلة اني لم اكن اعرف باجبارية فتح الفورم قبل تنفيذ الاستعلام لهذا ما اشتغل معاي والان الحمد لله تم فتحة واضافة تعديل بسيط عليه وتم نسخ الكود في الوحدة النمطية شكرا لك استاذ عمر ضاحي على سعة الصدر وربي يحفظك ويجعله في ميزان حسناتك strSQL = "INSERT INTO kanory ( a, b, c, d) SELECT Bdgi.Obsérvation, Bdgi.PDG_Pr, ""02- المداخيل ( الموارد)"" AS Expr1, ""1"" AS Expr2 FROM Bdgi WHERE (((Bdgi.année)=[Forms]![FrmMasarif]![txtYear]));"
    1 point
  9. كود واسلوب متقدم جدا سائل المولى ان يبارك لك فى صحتك ويجازك عنا كل خير فاني اقبل رأسك على هذا الابداع استاذى ومعلمي الاستاذ @jjafferr الله يبارك لك
    1 point
  10. أعتدر أخي @عادل ابوزيد خطأ لم انتبه له😂 الكود ينفد طلبك لاكن يجب وضع قيمة البحث بعد الصف الخاص بنقل البيانات لعناصر التيكست بهدا الشكل ليس قبلها للتوضيح 1) الفكرة انه يقوم بتحديد الصف بناءا على قيمة textbox4 في عمود ( F ) اسم صاحب المعاش يمكنك تعديلها بما يناسبك For i = 0 To 11 Controls("TextBox" & (i + 1)).Value = IIf(ListBox1.ListIndex <> -1, ListBox1.Column(i), "") Next i Clé = TextBox4.Value 2) في حالة كانت لديك أسماء مكررة يمكنك اظافة شروط اخرى كما في المثال التالي بحيث سنعتمد على اسم صاحب المعاش و رقم الملف وعند التحقق من تطابق الشرطين سيتم تحديد الصف وفي حالة وجود تكرار لنفس البيانات سيقوم بتحديد جميع الصفوف المكررة يمكنك تحميل الملف في المشاركة السابقة بعد تصحيح الخطأ وإختيار ما يناسبك Private Sub ListBox1_Click() Dim ws As Worksheet, OnRng As Range, ColFind As Range Dim Colstar As Integer, ColEnd As Integer, n As Long Dim Clé As Variant, Clé2 As Variant, tmp As Range, f As String, i As Byte Set ws = Sheets("البداية") Colstar = 3: ColEnd = 14 For i = 0 To 11 Controls("TextBox" & (i + 1)).Value = ListBox1.Column(i) Next i TextBox15.Value = ListBox1.ListIndex + 1 Clé = TextBox4.Value: Clé2 = TextBox3.Value Set tmp = Nothing n = 0 Set OnRng = ws.Range(ws.Cells(7, "F"), ws.Cells(ws.Rows.Count, "F").End(xlUp)) Set ColFind = OnRng.Find(Clé, LookIn:=xlValues, LookAt:=xlWhole) If Not ColFind Is Nothing Then f = ColFind.Address Do If ws.Cells(ColFind.row, "E").Value = Clé2 Then n = n + 1 If tmp Is Nothing Then Set tmp = ColFind.EntireRow Else Set tmp = Union(tmp, ColFind.EntireRow) End If End If Set ColFind = OnRng.FindNext(ColFind) Loop While Not ColFind Is Nothing And ColFind.Address <> f End If If n > 0 Then On Error Resume Next ws.Activate If Not tmp Is Nothing Then Dim rng As Range For Each row In tmp.Rows If rng Is Nothing Then Set rng = ws.Range(ws.Cells(row.row, Colstar), ws.Cells(row.row, ColEnd)) Else Set rng = Union(rng, ws.Range(ws.Cells(row.row, Colstar), ws.Cells(row.row, ColEnd))) End If Next row rng.Select End If On Error GoTo 0 End If End Sub
    1 point
  11. وعليكم السلام ورحمه الله بعد اذن استاذنا @عبدالله بشير عبدالله يسعدني أن أشارك معكم هذه التجربة في محاولة مني للمساهمة والتفاعل الإيجابي والاستفاده من حضرتكم. Sub نقل_الأعمدة() Dim wsSource As Worksheet Dim wsFirst As Worksheet Dim wsSecond As Worksheet Dim wsThird As Worksheet Dim lastRow As Long ' تعيين ورقة المصدر Set wsSource = ThisWorkbook.Sheets("الرئيسية") ' تعيين أوراق العمل الأخرى Set wsFirst = ThisWorkbook.Sheets("الأولى") Set wsSecond = ThisWorkbook.Sheets("الثانية") Set wsThird = ThisWorkbook.Sheets("الثالثة") ' العثور على آخر صف في ورقة المصدر lastRow = wsSource.Cells(wsSource.Rows.Count, 1).End(xlUp).Row ' نقل الأعمدة إلى الورقة الأولى wsSource.Range("A1:A" & lastRow).Copy wsFirst.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("D1:D" & lastRow).Copy wsFirst.Range("B1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("F1:F" & lastRow).Copy wsFirst.Range("C1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("AB1:AB" & lastRow).Copy wsFirst.Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("AC1:AC" & lastRow).Copy wsFirst.Range("E1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats ' نقل الأعمدة إلى الورقة الثانية wsSource.Range("A1:F" & lastRow).Copy wsSecond.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("AT1:AT" & lastRow).Copy wsSecond.Range("G1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats ' نقل الأعمدة إلى الورقة الثالثة wsSource.Range("A1:A" & lastRow).Copy wsThird.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("D1:D" & lastRow).Copy wsThird.Range("B1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("F1:F" & lastRow).Copy wsThird.Range("C1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("Q1:Q" & lastRow).Copy wsThird.Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("R1:R" & lastRow).Copy wsThird.Range("E1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats wsSource.Range("AB1:AR" & lastRow).Copy wsThird.Range("F1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats ' تنظيف الحافظة Application.CutCopyMode = False MsgBox "تم نقل الأعمدة بنجاح!", vbInformation End Sub
    1 point
  12. السلام عليكم فكرة الاستاذ محمد هشام افضل لانها تغنيك عن التعديل فى الكود فى الاشهر الاخرى فهى مرتة جدا وفى اي مكان وجود الملف وباى اسم فجزاه الله خيرا خير الجزاء بالرغم من ان ملف استاذنا يغنى عن الاظافة ويمكنك استخدامه الا ان طلبك الجديد اظافة عمودبن هو ما جعلنى اقوم بالرد تم تطبيق فكرة الاستاذ محمد هشام على الملف مع توضيح من زاد مرتبهم او نقص مرتبهم حسب طلبك عند الضغط على الزر قم باختيار الملف الاول ثم باخنيار الملف الثانى ارجو التوضيح اكثر وهل العمودين للملفين او ملف واحد وبقضل ارفاق ملف للتوضبح وااترتيب المطلوب نتائج المقارنة.xlsb
    1 point
  13. عمل رائع جدا جدا من القلب جزاك الله كل خير ان شاء الله
    1 point
  14. شكرا جزيلا لحضرتك.. تعبتك و اثقلت عليك جزاك الله خيرا
    1 point
  15. بعد عدة تجارب ، تبين أن السبب وراء الترميش والوميض الذي تحدثت عنه هو بسبب وجود صورة خلفية في النموذج . فبعد إزالة الصورة من الخلفية تحركت الكائنات والصور دون اي ترميش ؛ حتى في الأجهزة ذات الإمكانيات الضعيفة .
    1 point
  16. بالتأكيد أخي .. على الرحب والسعة 🙂 طبعا هذا النموذج يوزع الإجازات السنوية للموظفين .. يمكنك استبدال الإجازات بالمشاريع أو المهام أو أي شيء له بداية ونهاية مثل العقود أو الدراسات العليا أو الرحلات أو .. أو .. أو ... حسب حاجتك وخيالك الواسع 🙂👌 تفضل : Gant Chart.accdb
    1 point
  17. اذا تغير اسم الملف فلن تكون هناك نتائج الملف يعمل بامتياز تم تعديل ملف ايلول ياسم A وتشرين B حمل الملفات الثلاتة التالية وضعها على سطح المكتب وافتح ملف نتائج المقارنة واضغط على الزر A.xlsx B.xlsx نتائج المقارنة.xlsb
    1 point
  18. وعليكم السلام مقاييس الصفحة الموجودة في التقرير يتم اخذها من الطابعة الافتراضية ، الى ان يقوم المستخدم باختيار طابعة اخرى ، لذا ، اذا الطابعة التي يقوم باختيارها المستخدم لا تحتوي على A3 ، فلن تجد هذا الاختيار من القائمة. يمكنك استخدام طابعة pdf افتراضية ، واجعل حجم الصفحة فيها الذي تريده ، سواء A3 او اكبر ، وستجد هذا الحجم موجود عند اختيارك لطابعة الـ pdf . انا استعمل هذه الطابعة المجانية :
    1 point
  19. نعم يمكن ذلك الملف به 3 اكواد عمل المعادلات بكود1.xlsb
    1 point
  20. أخي @UserUser2 ، جرب هذا المرفق بعد التعديل، اعتقد أني استوعبت الفكرة بعد فنجان القهوة Fd.accdb لا تنسى ، اذا انتهت المشكلة ولله الحمد ، فقط اختر الإجابة كأفضل إجابة
    1 point
  21. فنون وأساليب التنبؤ باستخدام الاكسيل السلام عليكم ورحمة الله وبركاته موضوع اليوم استخدام الدوال ذات الدالة الأسية ( الاتجاهات الغير خطية الأسية ) فى التوقع او التنبؤ واتناول فيه الدالة Growth بالطريقة الرياضية والبيانية استخدام طريقة التمهيد الأسى Exponential Smoothing فى التوقع باستخدام الطريقة الرياضية وادوات تحليل البيانات solver ___________________ارجو ان يفيد الجميع ________________________ تناولت فى الموضوع السابق استخدام الاتجاهات الخطية فى التنبؤ واستخدمت الدوال forecast و trend و slope و intercept وتناولنا الطرق الرياضية والبيانية رابط الموضوع السابق http://www.officena.net/ib/topic/64412-فنون-وأساليب-التنبؤ-باستخدام-الاكسيل/ الجزء الثانى .rar
    1 point
  22. السلام عليكم ورحمة الله وبركاتة اعضاء المنتدى العظيم اليكم بعض الزراير التى تستدم فى الاكسل وانا تحت طلب الاعضاء اذا اردتة باسمك زراير.rar
    1 point
  23. السلام عليكم ورحمة الله وبركاته كثر السؤال عن استخدام الاكواد في عملة انظمة للفلترة وكيفية استخدامها وهنا مرفق مبسط لشرح آلية فلترة البيانات وكيفية التعامل معها وباغلب جوانبها وحاولت التبسيط على قدر الامكان حتي يتم استيعابها بشكل افضل اخوكم عماد الحسامي نظام فلترة البيانات.rar
    1 point
×
×
  • اضف...

Important Information