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

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

  1. Ali Mohamed Ali

    Ali Mohamed Ali

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


    • نقاط

      11

    • Posts

      11,630


  2. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      8

    • Posts

      8,723


  3. Barna

    Barna

    الخبراء


    • نقاط

      5

    • Posts

      983


  4. حسين العربى

    حسين العربى

    04 عضو فضي


    • نقاط

      4

    • Posts

      1,063


Popular Content

Showing content with the highest reputation on 01 سبت, 2020 in all areas

  1. جرب خذا الملف (يمكنك نسح الكود منه واسعماله في ملفك) يستطيع تقسيم الاسماء حتى ولو كانت اسماء مركبة مثل ( عبد الخالق عبد الرضى) بالاضافة الى الأسماء المختلطة (عبد السلام ماهر) أو (ربيع عبد الملك) والاسماء العادية ( سعيد مرزوق) الصفحة الأولى Sheet1 استحراج الاسماء حتى المرتبة الخامسة في الصفحة الثانية Salim الأسم الأول مع الاسم الأخير فقط Fuction_split_name.xlsm
    3 points
  2. هل جربت البرنامج .... عند الضغط على الزر تفتح لك صفحة البراوز لتحديد مكان ملف الاكسس منسوخ له الجدول وعند الاختيار يتم نسج الجدول مباشرة .... جرب المرفق ..... البرنامج.rar
    3 points
  3. تحتاج فقط إلى تغيير تنسيق الرقم يمكنك تغيير كود زر الضرب والقسمة إلى هذا الكود Private Sub CommandButton3_Click() TextBox3.Text = Format(Val(TextBox1.Text) * Val(TextBox2.Text), "#.00") End Sub Private Sub CommandButton4_Click() TextBox3.Text = Format(Val(TextBox1.Text) / Val(TextBox2.Text), "#.00") End Sub
    2 points
  4. السلام عليكم معذرة لتأخري لأنني صرت أعمل في المزرعة عوضا عن أبي المريض في هذه الأيام. الله يشفيه. أخي حسين الكود الأول الذي تقدم به أستاذنا جعفر و كذلك الذي تقدمت به أنا يقومان بالواجب. فكل ما عليك هو إضافة كود استخراج تاريخ الجهاز ثم المقارنة بينهما أما بالنسبة لشرح الأكواد فهو كالتالي: هذا الكود يقوم بفتح الإتصال مع sql server مع العلم أن master هي قاعدة بيانات النظام في sql server هنا قمنا بتنفيذ إستعلام داخل السرفر و أسندنا النتيجة لمصدر السجلات RS GETDATE() هو كود يقوم بجلب التاريخ الحالي في sql server و تستطيع كتابة العبارة التالية في sql server لترى النتيجة select GETDATE() MsgBox RS(0) هنا قمنا بعرض السجل الأول في المصدر RS مع العلم أن بها سجل واحد فقط هنا قمنا بإعلاق الإتصال مع SQL SERVER
    2 points
  5. السلام عليكم 🙂 هذه طريقتي لتفكيك الحقل الى حقول 🙂 نأخذ المرفق كالمثال من هذا الرابط : . هكذا تبدو السجلات ، بالعين المجردة : . والمطلوب ان نقسم بيانات السجل الواحد الى: الاسم ورقم التسلسل (وخلينا نستخدم السجل الاول كمثال) ، ونريد النتيجة تكون : . هناك طريقتين لفرز هذه البيانات : عن طريق كود ليقرأ الحروف/الارقام/العلامات واحدا واحدا ، ثم بوضع شروط اذا جصلنا على رقم ، فنتوقف ونحفظ الجزء الاول ، ثم نواصل ... ، وهذه العملية مرهقة وتحتاج الى تفاصيل كثيرة ، عن طريق الكود ، ولكن بإستخدام الدالة Split ، ويشترط فيها ان نعرف اين (بعد اي حرف/رقم/علامات) نقسم السطر ، ولنسمية شرط القطع . سنتعامل مع الطريقة الثانية وهي الاسهل 🙂 لمعرفة شرط القطع ، يمكننا ان نتعامل مع الحروف/الارقام/العلامات مباشرة ChrW ، او نتعامل مع ارقام هذه (الحروف/الارقام/العلامات) AscW ، وانا لا استغني عن هذه الصورة المرفقة لعملي ، الحرف Chr ، ومقابله رقمه Dec : . وبالنسبة للحروف العربية ، هذا رابطها : https://sites.psu.edu/symbolcodes/languages/mideast/arabic/arabicchart/ او https://www.ssec.wisc.edu/~tomw/java/unicode.html#x0600 وقد قمت باخذ البيانات من الموقع ورتبتها في صفحة واحد : فمثلا اول حروف اسم ابراهيم : ا = 1575 ، ب = 1576 ، ر = 1585 ، بمعنى AscW(ا) = 1575 , AscW(ب) = 1576 , AscW(ر) = 1585 والعكس يكون ChrW(1575) = ا , ChrW(1576) = ب , ChrW(1585) = ر . للحصول على الاسم ، نريد ان يكون لدينا شرط القطع بعد الاسم وقبل بداية الرقم (اي في المنطقة 1) ، للحصول على التسلسل ، نريد ان يكون لدينا شرط القطع بعد التسلسل وقبل بداية الاسم التالي (اي في المنطقة 2) ، لمعرفة شرط القطع يجب علينا ان نحلل البيانات التي يراها الكمبيوتر ، وذلك بتحويل الحروف/الارقام/العلامات الى AscW ، هذا الكود يقوم بهذه العملية: Public Function Split_Names() Dim rst As DAO.Recordset Dim x() As String Dim i As Long Dim a As String Set rst = CurrentDb.OpenRecordset("Select * From MyTxt_from_pdf") Do Until rst.EOF For i = 1 To Len(rst!Field1) a = Mid(rst!Field1, i, 1) 'الحروف/الارقام/العلامات a = a & "(" & AscW(a) & ") " 'رقمها AscW Debug.Print a Next i Loop rst.Close: Set rst = Nothing End Function ونناديه من نافذة الكود هكذا (يجب ان يكون الكيبور باللغة الانجليزة عند كتابة علامة الاستفهام) : . ونرى ان النتيجة للسجل الاول فقط : . وبعد التدقيق ، نلاحظ ان في نهاية الارقام نرى ان AscW التالية متكررة 8236 ثم 8236 ثم 32 ثم 32 ، وبذلك يمكننا استعمال هذه كشرط القطع بعد الاسم ا(1575) ق(1602) ل(1604) ح(1581) ا(1575) د(1583) م(1605) ح(1581) ي(1610) ا(1575) م(1605) و(1608) د(1583) د(1583) س(1587) ه(1607) ?(8236) ?(8236) ?(8236) -32 -32 -32 -32 -32 -32 . بعد الرقم 3(1635) 2(1634) ?(8236) ?(8236) ?(8236) ?(8236) -32 -32 -32 -32 . وعليه نستعمل هذا الكود ، ونرى نتيجته (للسجل الاول) : Do Until rst.EOF x = Split(rst!Field1, ChrW(8236) & ChrW(8236) & ChrW(32) & ChrW(32)) 'Name + ID For i = LBound(x) To UBound(x) Debug.Print x(i) Next i rst.MoveNext Loop ونتيجته ?ابراهيم احمد يحيى احمد? ??3 ?ابتهاج سامح نسيم اقلديوس? ??2 ?ابتسام محمد عبدا حماده? ??1?? . والآن خلينا نفكك الاسم من الرقم : Do Until rst.EOF x = Split(rst!Field1, ChrW(8236) & ChrW(8236) & ChrW(32) & ChrW(32)) 'Name + ID For i = LBound(x) To UBound(x) 'Debug.Print x(i) x2 = Split(x(i), ChrW(8236) & ChrW(32) & ChrW(32)) For j = LBound(x2) To UBound(x2) Debug.Print x2(j) Next j Next i rst.MoveNext Loop والنتيجة ?ابراهيم احمد يحيى احمد ??3 ?ابتهاج سامح نسيم اقلديوس ??2 ?ابتسام محمد عبدا حماده ??1?? . ونلاحظ من القائمة اعلاه ، ان علامات الاستفهام ارقامها ?(8235) ?(8234) ?(8236) . الخطوة الاخيرة هي تنظيف النتيجة من علامات الاستفهام هذه عن طريق الامر Replace ، والتخلص من المسافة الزائدة قبل وبعد النتيجة عن طريق الامر Trim ، وبعدها نريد ان نحفظ الاسم في اول حقل ، والرقم في الحقل الثاني: LBound دائما تساوي صفر Do Until rst.EOF x = Split(rst!Field1, ChrW(8236) & ChrW(8236) & ChrW(32) & ChrW(32)) 'Name + ID For i = LBound(x) To UBound(x) 'Debug.Print x(i) x2 = Split(x(i), ChrW(8236) & ChrW(32) & ChrW(32)) For j = LBound(x2) To UBound(x2) 'Debug.Print x2(j) a = Replace(x2(j), ChrW(8234), "") a = Replace(a, ChrW(8235), "") a = Replace(a, ChrW(8236), "") a = Trim(a) 'If j / 2 = Int(j / 2) Then If j = 0 Then 'even Debug.Print "Name: ", a Else 'odd Debug.Print "ID: " & a End If 'Debug.Print a Next j Next i rst.MoveNext Loop والنتيجة Name: ابراهيم احمد يحيى احمد ID: 3 Name: ابتهاج سامح نسيم اقلديوس ID: 2 Name: ابتسام محمد عبدا حماده ID: 1 Name: احمد السيد على محمد ID: 6 Name: ابراهيم كمال ابراهيم محمد ID: 5 Name: ابراهيم سمير عياد عطاا ID: 4 Name: احمد حسن احمد رسلن ID: 9 Name: احمد حجازى على محمد ID: 8 Name: احمد السيد محمد عبدالرحمن ID: 7 . -------------------------------------------------------- وفي سياق هذا الموضوع ، كان عندي مشروع القرآن الكريم ، وحفظه في قاعدة البيانات بعدة طرق: كل صفحة عبارة عن سجل ، وفي جدول آخر ، كل سطر في سجل ، وفي جدول آخر ، كل آية في سجل وقمت بتنزيل القرآن الكريم من مجمع الملك فهد لطباعة المصحف الشريف : https://fonts.qurancomplex.gov.sa/wp02/حفص والمرفق يحتوي على الخط العثماني ، والذي تم عمله في المجمع ، ولذا فهو يحتوي على حروف/ارقام/علامات AscW تختلف عن غيرها من الخطوط ، والطريقة الوحيدة لتفكيك الاسطر كانت بإتباع خطوات شبيهه بالخطوات اعلاه 🙂 جعفر
    1 point
  6. السلام عليكم عندى ملف اكسل خاص بالمشتريات الشهرية كيف يمكن نقل قيمة المشتريات من شركة معين الى صفحة ثانية (المستحق) بحيث تكون بعد مدة السداد المحددة مثلا في شهر 7 تم الشراء من X1 850 كيف يمكن نقل هذا القيمة الى التبوب الثاني المستحق ولكن بعد مدة السداد شهر (30يوم) بحيث تكون في مستحق شهر 8 و هكذا X2 300 تكون في مستحق شهر 10 يعني بعد 90يوم ولكم كل الشكر حساب المستحق.xlsx
    1 point
  7. السلام عليكم ورحمة الله وبركاته عندي برنامج مرتبط بجداول علي سيكوال سيرفر اريد جلب تاريخ ووقت السيرفر في حقل في نموذج بدل من تاريخ ووقت جهاز المستخدم الي عليه البرنامج IP _SERVER_ 128.122.1.20 وجزاكم الله خيرا
    1 point
  8. تم التحديث قليلاً من جهة احتصار الأكواد حدد ما تريد اخفاءه (او اظهاره ) واضغط الزر المناسب Fathi_Use_superr.xlsb
    1 point
  9. ماشاء الله شرح اكثر من رائع ووافى جلعله الله فى ميزان حسناتك ان شاء الله جزاك الله خيرا معلمنا العزيز جعفر وبارك الله لنا فيك وبارك لك فى كل ما تحب 💐
    1 point
  10. لاشكر علي واجب نحن نتعلم منك استاذ الفاضل وهذه فكرتك بس انا وضعت لمسه صغيره فقط
    1 point
  11. جعل الله ما تقدمه في ميزان حسناتك عمل مميز
    1 point
  12. وعليكم السلام ورحمة الله وبركاته تفضل اخي الكريم هذا في وحدة نمطية Public Function XSum(A As Integer, B As Integer, C As Integer) As Integer If A = 0 Then A = 1 If B = 0 Then B = 1 If C = 0 Then C = 1 XSum = A * B * C End Function وهذا في النموذج Me.X5 = XSum(Me.x1, Me.x2, Me.x3) xy.rar تحياتي
    1 point
  13. مبدأيا يمكن عمل فكرتك باحدى طريقتين : 1- نجعل الاكسس قبل الالحاق يتأكد سجل سجل ( هل هو موجود او لا ) واعتقد هذه الطريقة تأخذ وقت وخاصة اذا كانت السجلات كثيرة 2- نجعل الاكسس يحصر السجلات الموجود في الجدولين وفي حال وجود مكرر يظهرها لنا في نموذج وسؤالنا هل نريد الحاق هذه الاسماء المكررة ام لا اذا اذا كان ليس هناك تكرار في السجلات يقوم بالحاق السجلات دون اظهار النموذج وقد تكون هناك طرق اخرى .....
    1 point
  14. اخي الكريم يجب الا تنزعج مما قاله اخي مهند مهما كان السؤال بسيط يجب الالتزام بقوانين المنتدى هو ادراج ملف هذا في مصلحة الاعضاء حتى يتسنى للاساتذة ان يتفاعلو ا معك على العموم جرب هذه المحاولات لعلها تفيدك 1- اذاكان الملف محمي قم بفك الحماية 2- اذا كان هناك ملفات اكسيل مفتوحة اغلقها 3- قم بحدف الملفات الموجودة في ملف temp داخل جهازك 4- نتيجة لتحديثات النظام قد يكون تم وضع قيود راجع اعدادات امان النظام 5- قم يتحديث الاوفيس لديك 6- الحل الاخير اعد تتبيث الاوفيس من جديد
    1 point
  15. كما تفضلت استاذي الفاضل jjafferr انشأة جدول وسميته tbl_DateTime في قاعدة بينات سيكول يتكون من معرف/ وحقل تاريخ القيمة الافتراضية ()getdate وحقل اسمه tamp نوعه نص وفي النموذج وضعة حقل غير منضم وجعلة قيمته الافتراضية (1) /لاني النموذج عندي غير مرتبط بجدول / وفي حقل البحث وضعت كود لادراج رقم 1 من حقل tamp الي الحقل tamp / في جدول tbl_DateTime وبعد الادارج في الجدول يعطينا التاريخ والوقت الحالي للسيرفر فاستدعية في الحال عن طريق دالة DMax في حقل في النموذج اسمه srvr_Date_Time وفي زر الادخال توضع المقارنه بين تاريخ الجهاز وتاريخ السيرفر
    1 point
  16. وعليكم السلام ورحمة الله وبركاته توجد اكثر من طريقة فيمكنك مثلا استخدام دالة DLookup لعرض الوظيفة اذا كان combobox نص =DLookup("[XJop]"; "tbl"; "XName ='" & XName & "'") اما اذا كلان رقم =DLookup("[XJop]"; "tbl"; "XName =" & XName) وبدون ارفاق مثال لن تستطيع الوصول الى حل سريع تحياتي
    1 point
  17. تم معالجة الأمر (مع تعديل بسيط في ظهور الــ CheckBox يشكل يمكن قرائته بسهولة) مع التقليل من اهتزاز الشاشة قدر الامكان بواسطة 2 كود جديدين Debut و Fin Fathi_User.xlsb
    1 point
  18. صديقي انت قمت بتسمية الــــ Labels بجروف صغيرة a/b/c ..... و الاكسل يرى الفرق بين الحرف الكبير A والجرف الصغير a لذا يجب عليك ان تعمل احد هذين الاجرائين 1- تغيير اسماء الــــ Labels الى الأحرف الكبيرة A/B/C...... أو 2- تغيير الكود لكل Label كما في هذا الصورة و كود ظهور واخفاء الأعمدة كما في هذه الصورة ( علامة ? تدل على ان الاسم مؤلف من حرف واحد مثلاً D و علامة ?? تدل على ان الاسم مؤلف من حرفين مثلاً AC )
    1 point
  19. استخدم هذا الكود Dim fpathz As Variant Dim fil As String With Application.FileDialog(3) .Title = "Choose File" .Filters.Clear .Filters.Clear .Filters.Add "All Files", "*.*" .AllowMultiSelect = False .InitialFileName = "" If .Show = -1 Then fpathz = .SelectedItems(1) End If End With 'DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO tb_redy_rateb ( id_imp, tmonth, tyer, school, tnam, national_iD, old_asis, new_asis, elawa14, elawa15, edafya, egtemaya, hafz25, adaaa, badlteatcher, kader, ekama, shamel, add_nesab1, add_nesab2, add_nesab3, add_nesab4, masthkak, mastktaa, safy ) IN '" & fpathz & "' SELECT * " & vbCrLf & _ "FROM tb_redy_rateb;" 'DoCmd.SetWarnings True
    1 point
  20. وعليكم السلام-يمكنك استخدام هذه المعادلة لجمع الأرقام الموجبة =SUMPRODUCT(--($A$2:$A$1500>-1),$A$2:$A$1500) وهذه المعادلة لجمع الأرقام السالبة =-SUMPRODUCT(--($A$2:$A$1500<0),$A$2:$A$1500) جمع المبلغ بالسالب1.xlsx
    1 point
  21. شكر من القلب الى الاخ @محمد أبوعبدالله على مجهوده الشخصي في مساعدتي في برنامج سابق كل الشكر لك وللقائمين على هذا المنتدى الرائع استوقفتني بعض المشاكل في البرنامج سأنشرها في منشور اخر ربما في حين فراغك تستطيع مساعدتي فيها ولو اني اثقلت عليك لكن لا زلت في بداية المشوار التعلم وان انشالله ارد لك هذا الجميل .
    1 point
  22. جزاك الله خيرا اخي الكريم وارجو من الله العلي القدير ان يصلح لنا الاحوال وان يوفقك لما يحب ويرضى واكرر شكري وتقديري لك اخهي الكريم تحياتي
    1 point
  23. لا تنتظر المساعدة من احد بدون رفع ملف مدعوم بشرح كافى عن المطلوب ... فلا يمكن العمل على التخمين وتجنباً لعدم اهدار وإضاعة وقت الأساتذة دون جدوى أو أهمية
    1 point
  24. بارك الله فيك وزادك الله من فضله
    1 point
  25. بارك الله فيك وزادك الله من فضله
    1 point
  26. رجاء من الاخوه الافاضل شرح لى كيفية عمل اختيار اكتر من عنصر فى القائمة المنسدلة ممكن اختار او احدد اكتر من عنصر فى القائمة وتخزين القيمة فى حقل معين
    1 point
  27. هذه المقولة لعمرو بن بحر الملقب بالجاحظ احد اركان الادب العربي ومؤسسيه يقول ابن الخلدون ان الادب العربي اصله واركانه اربعة وكل ما سواها انما هو فرع او تابع لها البيان والتبيان للجاحظ الكامل لمحمد ابن يزيد الثمالي الملقب بالمبرد ادب الكاتب لعبد الله بن قتيبة الدينوري الامالي لإسماعيل بن القاسم البغدادي القالي جزاك الله خير اخي واستاذي د. محمد حلبي 🌹 لذا في بيئة اكثر عدائية لا يستطيع المستخدم تجاوز سطح المكتب تحياتي اخي واستاذي صالح حمادي 🌹
    1 point
  28. وعليكم السلام .. تم تحرير عمود الكمية Y وفك تقييده , كما تم دمج المعادلات طبقاً للمطلوب بهذه المعادلة بعمود القيمة =IFERROR(IF($U5="نقلة",$Z5,IF(AND(Y5>=SUMIF(data!$A$18:$A$21,$AA5,data!$B$18:$B$21),$U5="طن"),($Y5*$Z5),$Z5*SUMIF(data!$A$18:$A$21,$AA5,data!$B$18:$B$21))),"") 12346.xlsm
    1 point
  29. وعليكم السلام-لا يوجد دالة اصلاً بهذا الإسم .... الدالة اسمها DATEDIF وليس Dateif
    1 point
  30. بارك الله فيك استاذ محمد ولإثراء الحل -يمكنك استخدام هذه الدالة المعرفة Function Ahmed_Date(myid As Variant, Optional stype As Byte = 1) As Variant If myid = "" Then Ahmed_Date = "": Exit Function Dim n As Byte, governrate As Variant If stype = 1 Then Ahmed_Date = DateSerial(IIf(Left(myid, 1) = 2, 19, 20) & Mid(myid, 2, 2), Mid(myid, 4, 2), Mid(myid, 6, 2)) ElseIf stype = 2 Then governrate = Array("01-ÇáÞÇåÑÉ", "02-ÇáÅÓßäÏÑíÉ", "03-ÈæÑÓÚíÏ", "04-ÇáÓæíÓ", "11-ÏãíÇØ", "12-ÇáÏÞåáíÉ", "13-ÇáÔÑÞíÉ" _ , "14-ÇáÞáíæÈíÉ", "15-ßÝÑ ÇáÔíÎ", "16-ÇáÛÑÈíÉ", "17-ÇáãäæÝíÉ", "18-ÇáÈÍíÑÉ", "31-ÇáÈÍÑ ÇáÃÍãÑ", "32-ÇáæÇÏì ÇáÌÏíÏ" _ , "19-ÇáÅÓãÇÚíáíÉ", "21-ÇáÌíÒÉ", "22-Èäí ÓæíÝ", "23-ÇáÝíæã", "24-ÇáãäíÇ", "25-ÃÓíæØ", "34-ÔãÇá ÓíäÇÁ", "35-ÌäæÈ ÓíäÇÁ" _ , "26-ÓæåÇÌ", "27-ÞäÇ", "28-ÃÓæÇä", "29-ÇáÃÞÕÑ", "33-ãØÑæÍ", "88-ÎÇÑÌ ãÕÑ") For n = 0 To 27 If Mid(myid, 8, 2) = Left(governrate(n), 2) Then Ahmed_Date = Right(governrate(n), Len(governrate(n)) - 3) Exit For End If Next Else Ahmed_Date = IIf(Mid(myid, 13, 1) Mod 2 = 0, "ÃäËì", "ÐßÑ") End If End Function وعليك بوضع هذه المعادلة فى عمود محل الميلاد بداية من الخلية M6 =Ahmed_Date(E6,2) تنسيق 2020 عام-1.xls
    1 point
  31. الف الف شكر استاذي ومعلمي الفاضل جزاك الله خيرا وجعه في ميزان حسناتك
    1 point
  32. وعليكم السلام 🙂 نعم اعرف هذا ، لهذا السبب لم اذكر كلمة BE او محل تواجدها ، بينما في الرابط اعلاه ذكرت هذا لأن @سلمان الشهراني لم يكن يستعمل SQL Server : . انت لن تعمل مجلد مشاركة لتضع فيه اي شيء له علاقة ببرنامجك ، ويمكنك استعمال اي مجلد مشاركة عام في السيرفر ، حيث ان هذه الطريقة تختاج الى عمل ملف txt على الجهاز الآخر (السيرفر في حالتك). اما الآن فاترك كل ما عملناه ، وخلينا نتكلم عن السيرفر 🙂 انت استلمت رسالتين خطأ : 1. Type mismatch ، وهذا بسبب خطأ في السطر التالي من الكود : بدلا عن If Err.Number = 70 Then MsgBox "Permission Denied" MachineTimeGet = "" استعمل If Err.Number = 70 Then MsgBox "Permission Denied" MachineTimeGet = Empty بعد البحث ، وجدت الطريقة ، ووضعتها في نموذج جديد: جعفر 1176.my_FE_Network_PC_Time.mdb.zip
    1 point
  33. تفضل اخى الكريم اتبع الخطوات الموجودة بهذا الرابط للوصول لحل المشكلة ولكم جزيل الشكر 6 Working Solutions to Fix “Microsoft Excel has Stopped Working” Error Message وهذا فيديو ايضاً للشرح
    1 point
  34. من فضلك اتبع الخطوات كما بالصور فكل حاجة تعمل معى بكفاءة وان وجدت غير ذلك معك فيجب حل المشكلة لديك بنفسك او عليك بتغيير متصفح الإنترنت لديك أو تحديثه
    1 point
  35. وعليكم السلام -المنتدى تعليمى من المقام الأول وليس لتقديم البرامج الجاهزة... فهل تتخيل ان يقوم احد بتصميم برنامج كامل لك على الجاهز ؟!! عليك برفع ملف مدعوم بشرح كافى عن المطلوب مع وضع البيانات المطلوب وان شاء الله ستلقى المساعدة من الأساتذة !!!!!! أو لو قمت بإستخدام خاصية البحث بالمنتدى , كما نبهنا كثيراً لوجدت برنامج أكثر من ممتاز وبه أكثر مما تطلب لأستاذنا الكبير ضاحى الغريب له منا كل المحبة والإحترام برنامج إدارة الإيجارات - الاصدار الأول - ضاحي الغريب وهنا برنامج اخر باللغة العربية واللغة الإنجليزية ... بمقابل مادى أفضل برنامج عقارات لإدارة كافة الأنشطة العقارية متوفر باللغة العربية والإنجليزية فممنوع من قبل ادارة المنتدى رفع اى شيئ على الخاص
    1 point
  36. وعليكم السلام-تفضل رابط التحميل : https://www.up-4ever.org/0yc50q0spzhx سريال التنشيط : KGFVY-7733B-8WCK9-KTG64-BC7D8 باسورد فك الضغط www.mrelhlawany.com
    1 point
  37. اجعل المعادلة هكذا حتى تستطيع قراءة شهر 8 مثلاً =SUMPRODUCT((Sheet1!C2:C45<>"الغاء")*(Sheet1!F2:F45<>"محصل")*(Sheet1!D2:D45="معارض - Bmw")*(Sheet1!E2:E45)*(Sheet1!G2:G45=MONTH(S1))) Sum_pro1.xlsx
    1 point
  38. استاذ أحمد لا ضرورة لعمل حلقة تكرارية حتى 1000 صف (أكثر من 900 فارغ) بالاضافة الى شروط IF لوضع التسلسل (أرهاق اضافي للبرنامج) يكفي اضافة ما موجود في المربع الأزرق من هذه الصورة
    1 point
  39. بارك الله فيك أستاذنا ومعلمنا الفاضل ولكن بعد إذن حضرتك تم إضافة كود للتسلسل التلقائي في العمود A Class_3.xlsm
    1 point
  40. بعد اذن احي أحمد بدره هذا الكود ربما يكون اسهل قليلاً (الشيت 3) Option Explicit Sub Get_data() Dim S As Worksheet Dim T As Worksheet Dim cret_rg As Range Dim col% Dim s_rg As Range Set S = Sheets("Sheet2"): Set T = Sheets("Sheet3") Set s_rg = S.Range("A1").CurrentRegion If T.Range("B3").CurrentRegion.Rows.Count > 1 Then T.Range("B3").CurrentRegion.Offset(1). _ Resize(T.Range("B3").CurrentRegion.Rows.Count - 1).Clear End If If s_rg.Rows(1).Find(T.Range("H1"), lookat:=1) Is Nothing Then Exit Sub col = s_rg.Rows(1).Find(T.Range("H1"), lookat:=1).Column With T .Range("B3") = S.Range("A1") .Range("C3") = S.Range("B1") .Range("D3") = T.Range("H1") .Range("H2") = "غ" Set cret_rg = .Range("H1:H2") s_rg.AdvancedFilter 2, cret_rg, .Range("B3:D3") .Range("H2") = "" End With End Sub الملف مرفق Class_3.xlsm
    1 point
  41. بسم الله الرحمن الرحيم اخواني الكرام اسعد الله ايامكم وبعد هذا ملف رائع مبذول فيه جهد ملحوظ ندعو الله ان يجازي كل من ساهم في اخراجه الى النور وهو الاستاذ عادل حنفي واستاذ يوسف ****** ارجو من حضراتكم *** اضافة كود ليفتح الملف وتكون لغة الكتابه دائما باللغه العربيه ثانيا : اضافة جزئيه في كود التوزيع العشوائي انه عند الضغط على زر DO JOB ونكون قد كتبنا يدويا حرفالحاء لبعض الاسماء يتم التوزيع كاملا مع ترك هذه الاحرف ليكونوا احتياطيا وجزاكم الله كل خير توزيع الملاحظين.rar 342.93K 80 عدد مرات التحميل
    1 point
  42. الاستاذ الفاضل نارت (ابوادم) نسأل الله ان يديم عليك نعمة الصحة والعافية ويبارك لك في مالك ورزقك وولدك وللاخ محمد أيمن مثل ذلك بارك الله فيكم ونفع بعلمكم
    1 point
  43. جميلة اخي نزار و لكن الاخ ياسر طلب ان تكون البداية من الرقم الثاني بحيث يكون التاريخ 01 / 10 / 1978 اتمنى ان تفي هذه المعادلة بالمطلوب =19&MID(B1,2,2)&"/"&MID(B1,4,2)&"/"&MID(B1,6,2)
    1 point
×
×
  • اضف...

Important Information