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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      23

    • Posts

      9,814


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      6

    • Posts

      8,723


  3. بن علية حاجي

    بن علية حاجي

    الخبراء


    • نقاط

      5

    • Posts

      4,342


  4. husamwahab

    husamwahab

    الخبراء


    • نقاط

      5

    • Posts

      1,047


Popular Content

Showing content with the highest reputation on 09 مار, 2020 in all areas

  1. السلام عليكم ورحمة الله تم تعديل ترتيب اغلب التكست بوكس لكى تتوافق مع الكود الجديد اليك الملف بعد التعديل عمل كارنية لكل طالب.rar
    3 points
  2. وعليكم السلام 🙂 اسم المدرس يكون موجود من ضمن البيانات التي يتم استيرادها الى الجدول Temp3 ، لهذا السبب ، علينا ان نوقف البرنامج وندقق في الجدول ، واذا استوردنا بيانات ملف الاكسل الذي ارفقته ، نرى انها في آخر سجل ، في الحقل F5 : . وعليه ، الاسطر الثلاث من الكود التالي يجلب لنا الاسم (طبعا بدون تغيير طريقة عمل الكود ككل) : If i = 8 Then sSubject = rst("F1") s_ID = rst!ID + (RC - 8) 'get the Auto_ID "ID" number for Record#8, then add to it "Total Records" - 8 s_Teach_Name = DLookup("[F5]", "Temp3", "[ID]=" & s_ID) s_Teach_Name = Replace(s_Teach_Name, "اسم المعلم ", "") . والتغيير في آخر السطرين ، حتى يتم ادخال المعلومة الى حقل Teach_Name في جدول Mark : mySQL = "INSERT INTO mark ( StName, StuId, S_Sum, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, S_Subject, S_Class, Teach_Name )" mySQL = mySQL & " SELECT [" & sName & "], [" & sID & "], [" & smark & "], [" & s1 & "], [" & s2 & "], [" & s3 & "], [" & s4 & "], [" & s5 & "], [" & s6 & "], [" & s7 & "], [" & s8 & "], [" & s9 & "], [" & s10 & "], '" & sSubject & "', '" & sClass & "', '" & s_Teach_Name & "'" . والنتيجة : جعفر FMARK.zip
    3 points
  3. تفضل ، ضع هذا الكود على حدث النقر على الزر 🙂 انا ما جربت الكود ، بس وانا اشرب الشاي كتبته 🙂 dim rst as dao.recordset set rst= me.[اسم النموذج الفرعي حسب ما هو].form.recordsetclone do until rst.EOF rst.edit rst![اسم الحقل الذي تريد ان تفرغه] = null rst![اسم الحقل التالي الذي تريد ان تفرغه] = null ..... rst.update rst.movenext loop . جعفر
    3 points
  4. السلام عليكم معذرة، هذا سهو مني، قد نسيت أن أنبهك لهذا حيث أني عدّلت أيضا كل المعادلات التي لها علاقة بالشيت TS بتثبيت الخلايا فيها بالعلامة $... مثل المعادلة : =SI(TS!A5="";"";TS!A5) وبدلتها بالشكل: =SI(TS!$A$5="";"";TS!$A$5) وقد قمت بذلك في الملف المرفق (الخلايا الملونة بالأصفر -يمكنك إزالة هذا اللون الذي وُضع للشرح فقط-)... معذرة مرة أخرى... بن علية حاجي GN niv1 v3.xlsm
    2 points
  5. تفضل تم معالجة الخطأ برنامج المعتمرين _A4AA2020(4) (1).xlsm
    2 points
  6. الأخ حربي العنزي .. عذا الكود وضعناه في زر أمر تفريغ الحقول ( عند النقر ) ومن ثم كتابة اسم الجدول وهو باللون البنفسجي :: وكذلك أسماء الحقول المطلوب تفريغها المشار إليها باللون الأحمر .. Private Sub CmdUpdate_Click() Dim strSQL As String strSQL = "UPDATE TBL1 SET TBL1.daan = NULL, TBL1.mdeen = NULL, TBL1.sumMdeen = NULL, TBL1.sumDaan = NULL, TBL1.rseedMD = NULL, TBL1.rseedDA = NULL, TBL1.mdowrMD = NULL,TBL1.mdowrDA = NULL" DoCmd.SetWarnings False DoCmd.RunSQL strSQL DoCmd.SetWarnings True Me.Requery End Sub وللأمانة فالكود بعد البحث وجدته للأخت زهرة مع تعديل اسم الجدول والحقول فيه .
    2 points
  7. تفضل الاستعلامات 🙂 للغياب فقط ، وما ممكن بين تاريخين ، لأن الغائب اصلا ما مسجل له تاريخ غيابه !! . . اما الجميع ، كتبت الحاضر والغائب بالانجليزي ، علشان تشوف المعادلة بالطريقة الصحيحة ، لأن الكلمات العربية بتقلبها!! : . . جعفر 1179.برنامج الحضور والغياب للطلاب بالباركود.accdb.zip
    2 points
  8. السلام عليكم تم عمل المطلوب في الملف المرفق... أرجو أني وُفقت في تصحيح الخلل... بن علية حاجي GN niv1 v2.xlsm
    2 points
  9. السلام عليكم اخوي حسام 🙂 لاحظ الفرق في طريقة عرض الكود في مشاركتك السابقة : بينما يمكنك استخدام الزر : ثم تضع الكود بداخله ، ليصبح هكذا ، وتسهل قراءته 🙂 DLookUp("Gaza","tabGazaa","[Gazdate] <=#" & [Forms]![tblnewtaq]![taqto] & "#" & "and [Gazdate]>=#" & [Forms]![tblnewtaq]![taqfrom] & "#" & "and [gazaeid]=" & [eid]) ------------------------------------------------------------------------------------------------------------------------------------------------------------------- وعليكم السلام اخوي عبد الفتاح 🙂 الكود الذي وضعته انت يشير الى تاريخ ، لذلك ، رجاء اكتب لنا هنا بعض التواريخ اللي في برنامجك (اعمل منها نسخ ولصق حتى نرى الصيغة الصحيحة ) ، واكتب لنا بعض التواريخ التي لا يعطي الكود نتائج صحيحة بها 🙂 يعني مجرد ارفاقك صورة للكود لا يعطينا بيانات كفاية للتفكير معك 😁 ويمكنك ان تجرب Between ، لأنها الطريقة الاخرى لحصر القيم بين تاريخين 🙂 جعفر
    2 points
  10. مافي فرق بين هذا الكود والكود السابق ، مجرد اسم المتغير اصبح تابع لإسم النموذج : A = Nz(DLookup("[ITEM_BARCODE]& '|' & [ITEM_CODE]", "POS_MASTER", "[ITEM_BARCODE]='" & Me.ITEM_BARCODE & "'"), "|") x = Split(A, "|") Forms!forms1!serh_Barcod = x(0) Forms!forms1!item_no = x(1) جعفر
    2 points
  11. بعد اذن الاخ ابو عيد هذا الملف Spec_Suite.xlsx
    2 points
  12. السلام عليكم استاذنا العزيز تفصل هذه الصيغة ارجو ان تكون صحيحة DLookUp("Gaza","tabGazaa","[Gazdate] <=#" & [Forms]![tblnewtaq]![taqto] & "#" & "and [Gazdate]>=#" & [Forms]![tblnewtaq]![taqfrom] & "#" & "and [gazaeid]=" & [eid])
    2 points
  13. السلام عليكم 🙂 الجوازات والبطاقات الشخصية والهويات الحكومية ، في اسفلها كود يسمى MRZ وفيه معلومات من الوثيقة ، الجواز ، وفي اسفله سطرين من كود MRZ : . والهوية ، وفي اسفلها 3 اسطر من كود MRZ : . وهناك عدة اجهزة (هي في الواقع سكانرات) التي يمكنها قراءة هذه الوثائق ، وتستعمل نظام OCR وتحول الصورة الى نص ، ومن ضمن هذه الاجهزة ، جهاز 3M CR100 https://www.gemalto.com/govt/document-readers/cr100 والظاهر ان هذا الجهاز معتمد من قِبل البوابة الالكترونية الموحدة لحجاج الخارج . . تنزيل وتنصيب برنامج التشغيل : http://www.3m.com/ssdcp/3M Swipe Readers/SDK/3M Swipe Reader SDK 1.2.1.2 Setup.exe خلونا نستعمل هذا الجهاز عن طريق الاكسس 🙂 بعد تنصيب برنامج تشغيل الجهاز ، يقوم برنامج الاكسس بتشغيل برنامج الجهاز في الكمبيوتر (فإذا ما عملت تنصيب للبرنامج ، اوقف عمل السطر : ) Private Sub Form_Load() On Error GoTo err_Form_Load 'turn ON the scanner xml program ' Call Restart_XML '<<< اوقفوا عمل هذا السطر . النموذج يكون جاهز على الحقل Line_0 ، والذي يبدا بأخذ نتيجة OCR ، . . وتكون النتيجة بهذه الطريقة (انا وضعت الارقام امام الاسطر) : 0'START 1'OCR Line 1: IDOMN1900000<<3<<<<<<<<<<<<<<< 2'OCR Line 2: 7008529M2018227OMN<<<<<<<<<<<6 3'OCR Line 3: ALI<MOHAMMED<HUSSAIN<<AL<MOOSA 4'MSR Track 1: 5'MSR Track 2: 6'MSR Track 3: 7'End . لعمل البرنامج ، اضطررت لعمل الاكواد بنفسي ، لأن SDK الجهاز كانت للغات اخرى غير VBA ، وهذه الوحدة النمطية التي تقوم بتفكيك الكود اعلاه ، سواء لجواز او بطاقة او فيزا : Public Function Parse_MRZ(frmN As String) On Error GoTo err_Parse_MRZ ' '08-06-2018 'by jjafferr ' Dim L1 As String Dim L2 As String Dim L3 As String Dim gDocType As String Dim Pass_Type As String Dim gLastName As String Dim gFirstName As String L1 = Replace(Forms(frmN)!Line_1, "OCR Line 1: ", "") L2 = Replace(Forms(frmN)!Line_2, "OCR Line 2: ", "") L3 = Replace(Forms(frmN)!Line_3, "OCR Line 3: ", "") gDocType = Mid(L1, 1, 1) Select Case gDocType Case "P", "V" 'passport , Visa Forms(frmN)!gDocType = gDocType 'LINE 1 Pass_Type = Mid(L1, 2, 1) 'Either < or Passport type Forms(frmN)!gIssuing = Mid(L1, 3, 3) gLastName = Mid(L1, 6, InStr(L1, "<<") - 6) gLastName = Replace(gLastName, "<", " ") Forms(frmN)!gLastName = Trim(gLastName) gFirstName = Mid(L1, InStr(L1, "<<") + 2, InStr(InStr(L1, "<<") + 1, L1, "<<") - InStr(L1, "<<") - 2) gFirstName = Replace(gFirstName, "<", " ") Forms(frmN)!gFirstName = Trim(gFirstName) Forms(frmN)!gDocNumber = Mid(L2, 1, 9) 'LINE 2 Forms(frmN)!gCountry = Mid(L2, 11, 3) Forms(frmN)!gDOB = DateSerial(Mid(L2, 14, 2), Mid(L2, 16, 2), Mid(L2, 18, 2)) Forms(frmN)!gGender = Mid(L2, 21, 1) Forms(frmN)!gDocExpiry = DateSerial(Mid(L2, 22, 2), Mid(L2, 24, 2), Mid(L2, 26, 2)) Forms(frmN)!gAddInfo = Mid(L2, 29, InStr(L2, "<<") - 29) Case "I", "A", "C" 'ID Forms(frmN)!gDocType = Mid(L1, 1, 2) Pass_Type = Mid(L1, 2, 1) 'Either < or completing the first letter Forms(frmN)!gIssuing = Mid(L1, 3, 3) Forms(frmN)!gDocNumber = Mid(L1, 6, InStr(L1, "<<") - 6) Forms(frmN)!gDOB = DateSerial(Mid(L2, 1, 2), Mid(L2, 3, 2), Mid(L2, 5, 2)) 'LINE 2 Forms(frmN)!gGender = Mid(L2, 8, 1) Forms(frmN)!gDocExpiry = DateSerial(Mid(L2, 9, 2), Mid(L2, 11, 2), Mid(L2, 13, 2)) Forms(frmN)!gCountry = Mid(L2, 16, 3) gFirstName = Mid(L3, 1, InStr(L3, "<<") - 1) 'LINE 3 gFirstName = Replace(gFirstName, "<", " ") Forms(frmN)!gFirstName = Trim(gFirstName) gLastName = Mid(L3, InStr(L3, "<<") + 2) gLastName = Replace(gLastName, "<", " ") Forms(frmN)!gLastName = Trim(gLastName) End Select Exit_Parse_MRZ: Exit Function err_Parse_MRZ: If Err.Number = 9 Then 'susbcription out of order, ignore Resume Next ElseIf Err.Number = 13 Then 'Type mismatch, ignore Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_Parse_MRZ End If End Function برنامجي الذي في الخدمة ، يقرأ بيانات الجوازات والهويات في اقل من 3 ثواني ، بالأضافة الى قراءة باركود بعض الهويات الاخرى ، وادخال يدوي لأنواع اخرى من الهويات ، لهذا السبب كان يتطلب مني استعمال هذه الاحداث🙂 Public Sub Line_0_BeforeUpdate(Cancel As Integer) Private Sub Line_0_KeyDown(KeyCode As Integer, Shift As Integer) Private Sub Line_0_AfterUpdate() Private Sub Line_7_AfterUpdate() . احد اهم الامور التي اخذت مني وقت طويل لمعرفتها هي ، يجب ان تكون لغة الكيبورد بالانجليزي ، وقت قراءة البطاقة ، وإلا فالنتائج تعطيك خطأ ، لهذا السبب فالبرنامج تلقائيا يحول اللغة الى انجليزي ، لما التركيز يكون في حقل Line_0 🙂 الجدول و الكود قد يكون فيه بقايا من برنامجي ، ولكن لن يضروكم ان شاء الله 🙂 جعفر CR100 card reader.zip
    1 point
  14. السلام عليكم اعضاء واساتذة منتدانا الغالي هذه محاولة وتعديل لمشاركة احد الاخوة الكرام فيما يخص الصلاحيات لقاعدة البيانات اكواد تشفير الرقم السري هي نفسها المستخدمة سابقا بالاضافة مع الاستعانة ببعض الشروح ملاحظة : في القاعدة اربعة مستخدمين ثلاثة منهم بصلاحيات محدودة والادمن بصلاحيات كاملة اسم المستخدم كلمة السر admin 0 A 1 B 2 C 3 Root1000.rar
    1 point
  15. اللهم يسر امرك كما يسرت امرى ويدخل على قلبك الفرح والسرور عمل رائع استاذ ابراهيم ولكن فى نفطة بعد تجربة الفورم فهو بتخطى تلميذ رقم 9 وتلميذ رقم 10 وايضا تلميذ رقم 19 وايضا تلميذ رقم 20 وهكذا
    1 point
  16. السلام عليكم تم التعديل فقط في الأمر التالي من الكود : .Range(a).EntireRow.Offset(h * i - h).Copy .[A1].Offset(h * i) بالأمر التالي : .Range(a).EntireRow.Offset(h * i - h + 1).Copy .[A1].Offset(h * i) حيث أن الأمر الأول كان يضيف صفا فارغا بين الصفحة (الكشف) والصفحة التي تليها (الكشف الموالي) فيحدث الخلل... أرجو أن يكون الشرح واضحا... بن علية حاجي
    1 point
  17. وعليكم السلام استاذ جعفر وكل الشكر للملاحظة وان شاء الله ساعتمد الطريقة الصحيحة
    1 point
  18. يجب ان يكون العامود الثاني(B) فارغاً وايضاً الصف الثالث(ٌRow 3) كي يعرف الاكسل اي مجموعة يجب اخذها كي يمسح القديم منها ويسجل الجديد الملف من جديد Distribution_new.xlsm
    1 point
  19. شكرا على ارد لقد شاهدة فيديو ووجدت طلبي فيه والحل هو في استعلام بدل ان تضع قيمة مثلا لتحديث 10 في كل وقت تدخل الى استعلام وتغير القيمة اضع مسار الحقل الدي في النمودج ومن النمدج ادخل القيمة له وتتحدث من استعلام
    1 point
  20. تفضل .. ان شاء الله هو المطلوب 1استعلام الحاقي.rar
    1 point
  21. هذا لأنك ما عندك نموذج فرعي (الآن شفت برنامجك !! ) ، استعمل: set rst= me.recordsetclone جعفر
    1 point
  22. نعم اذا كنت تريد ان تحدث جميع حقول الجدول 🙂 بينما اذا اردت تحديث حقول النموذج فاستعمل الكود اللي اعطيتك ، لهذه الاسباب : - النموذج قد يكون مصدره استعلام ، وقد يكون هناك تصفية في الاستعلام ، - النموذج الفرعي عادة يكون مرتبط بالنموذج الرئيسي عن طريق ربط حقل ، لذلك فهو عادة يعرض سجلات معينة فقط 🙂 جعفر
    1 point
  23. وعليكم السلام استاذ مصطفى 🙂 هذه بيانات جداولك : . رجاء تعطينا توضيح وبالتفصيل عن طلبك !! جعفر
    1 point
  24. السلام عليكم الحمدلله تم تحول الملف بواسطة الأكواد مع العلم أن الكود ليس لي ولكن وجدته أثناء البحث وقمت بالتعديل عليه حتى يسهل فهمه ولا زال فيه بعض الطلاسم التي لم أفهمها الشرح داخل الملف تفضلوا Convert DAT to Excel.xlsm
    1 point
  25. شكرا لاستاذنا العزيز محمد ابوعبد الله شهادة اعتز بها والشكر موصول لاستاذنا الغالي السنهورى
    1 point
  26. وعليكم السلام تفضل اخي الكريم هل هذا هو المطلوب؟ بالتوفيق برنامج الحضور والغياب للطلاب بالباركود.accdb
    1 point
  27. مثل هذا الجهاز AT9000 ، ويعمل بنفس طريقة الجهاز CR100 بأته يأخذ كود MRZ ويفككه (وسيكون مشروعي التالي ان شاء الله 🙂 ) ، وبالاضافة يأخذ: صورة ملونة لصفحة الجواز ، صورة ابيض واسود لصفحة الجواز (لكشف التزوير) ، صورة من صورة صاحب الجواز الشخصية ، . . نعم يمكن التحكم في هذا ، بطريقتين: عن طريق ملف XML ، او بتفكيك السطر على اساس علامات "<" (لاحظ الوحدة النمطية في مشاركتي الأولى) ، او الاثنين معا 🙂 جعفر
    1 point
  28. يمكنك رفع الملف على أحد مراكز رفع الملفات مثل الميديا فاير أو جوجل درايف أو Top 4 Top أو غيرها ثم رفع رابط الملف وليس الملف نفسه
    1 point
  29. في هذا الملف تتحدث البيانات كلما فتحت صفحة Archive ولا لزوم للضغط على الزر ALL_data_auto.xlsm
    1 point
  30. لا أعلم لماذا كل هذه التعقيدات في الملف يوزر فورم و تكس بوكس الى ما هنالك انظر الى هذا الملف البسيط My_facture.xlsm
    1 point
  31. تخى خلف @Khalf جزاك الله خيرا ولما البحث بالخارج فالقسم ملىء بالامثله والشروحات وجزاهم الله خيرا اخواننا واساتذتنا فهم قدموا لنا شروحات كافيه ووافيه والحمدلله رب العالمين تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق
    1 point
  32. السلام عليكم كما تفضل أستاذ @أحمد الفلاحجى كي يكتمل السؤال فلابد من مثال، كون سؤالك عن حالة خاصة. ولكن بما يتعلق بجزءمن سؤالك، فدالة إكسل sumif/ sumifs لها في أكسس دالة مكافئة هي Dsum، تستطيع من خلالها تحقيق نفس النتيجة، يمكن أن تبحث بجوجل عنها. بقي أن تضع مثالك إن احتجت المساعدة بتطبيق هذه الدالة.
    1 point
  33. وعليكم السلام اخى الفاضل ارفق مثالك واشرح ماذا تريد واخوانك واساتذتنا ما بيقصروا تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق
    1 point
  34. برنامج المخزون و الفواتير الشامل .... الاصدار الثالث اكسيل 2007 - اكسيل 2010 اليوم بمشيئة الله هو الانطلاق الرسمى لهذة النسخه وبعد انتهاء مرحلة التجربة التى دامت اكثر من شهرين خطوات استخدام البرنامج لأول مره تسجيل البيانات الجديدة داخل البرنامج لعمل فواتير البيع و الشراء و الحركات المالية 1- تسجيل اسماء مناديب البيع وهى خطوه مهمه مطلوبة لتسجيل اسم عميل جديد 2- تسجيل و ادخال العملاء (يتم ربط كل عميل باسم مندوب) 3- تسجيل و ادخال الموردين 4- تسجيل و ادخال اسماء لفئة الصنف وهى خطوه مهمه مطلوبة لتسجيل صنف جديد 5- تسجيل و ادخال الاصناف (ولابد من وجود فئة مدخله مسبقا لكى تستطيع ادخال الصنف) 6- ولا تنسى تسجيل رصيد اول المده فى شاشة البيانات و الجرد الجديد فى هذا الاصدار * واجهة تطبيقية كاملة * برنامج كامل مخزون فواتير ذمم عملاء وموردين واستحقاقات خلال الفترات الزمنية المختلفة * اختصارات سريعة لتنفيذ العمليات و التقارير بسرعة عالية * كشف حساب بطريقة جديدة بمعنى نفترض انه هناك عميل ما علية مديونية بفيمة 15000 فالبرنامج يعطيك كشف حساب تفصيلى للمديونية المستحقة خلال فترات 30 يوم 60 يوم 90 يوم و اكثر من 90 يوم فمثلا فى المثال السابق يكون استحقاق المديونية على حسب فواتير العميل مستحق فى 30 يوم 3000 وفى 60 يوم 6000 وفى 90 يوم 4000 و فى اكثر من 90 يوم 2000 فيكون اجمالى المديونية هم ال 15000 لكن الاستحقاق فى فترات مختلفه وهذا الكشف يفيد كل من يتعامل بالاجل لمعرفة المستحق خلال الفترة التى يريدها وعندما يقوم العميل بسداد جزء من المستحق يتم خصمه من المديونية القديمه بمعنى ان العميل فى المثال السابق قد قام بسداد 1500 فيتم خصمها من ال 2000 وهى مديونية الاكثر من 90 فيصبح كشف حسابة كالتالى مستحق فى 30 يوم 3000 وفى 60 يوم 6000 وفى 90 يوم 4000 وفى اكثر من 90 يوم 1500 فيكون اجمالى المديونية هم ال 13500 * شاشة فواتير جديده تحوى الكثير و الكثير من الاختصارات للعملاء و الاصناف وتوصلك الى عدة تقارير بضغطة زر واحده عرض معلومات عن الصنف و رصيده الحالى داخل المستودع و اخر سعر شراء بمجرد اختيارك للصنف وادخاله داخلة الفاتوره سهولة الغاء وتعديل الصنف داخل الفاتورة عن طريق الدبل كليك ذهاب مباشره الى تقرير صنف معين بمجرد اختياره وضغط تقرير الصنف اكتشف المزيد............ *شاشة لتقرير المديونية خلال الفترات الزمنية المختلفة يجب عليك قراءة ومراجعة شرح البرنامج جيدا حيث توجد العديد و العديد من الاختصارات السريعة التي تنقلك من شاشة الى اخرى بسرعه عالية ولتوفير وقتك داخل البرنامج. كما توفر لك سرعة الحصول على المعلومة المطلوبة. * لتحميل نسخة من الشرح وهى عبارة عن ملف تنفيذي اضغط على الرابط التالى شرح برنامج المخزون و الفواتير الشامل( ملف تنفيذى... 6MB رابط خارجى على موقع ميديا فاير) * او الذهاب الى موضوع شرح البرنامج و مناقشات مشرفى و اعضاء المنتدى داخل المنتدى على الرابط التالى شرح برنامج المخزون و الفواتير الشامل(مشاركة داخل المنتدى) كما احببت ان اقدم مناقشة ونصائح مديري و اعضاء المنتدى للبرنامج لكى يستفيد منها الجميع وهذه المواضيع تم مناقشتها في موضوع شرح البرنامج داخل المنتدى انظر المشاركة التالية لمشاهدة النصائح و المناقشات حول البرنامج واخيرا اقدم لكم البرنامج حجم البرنامج 1.2 MB اختر اسم المستخدم المدير كلمة السر 123 محرر الاكواد 85211 لاتترد فى الاستفسار عن اى شيى داخل البرنامج ضع مشاركتك وسوف يتم الرد عليها كما يمكن مراسلتى على الايميل التالى amroomo@gmail.com اخيرا اتمنى ان يكون هذا البرنامج اضافة الى برامج المخزون و الفواتير وتغيير مسارها على الاكسيل فهذا العمل جديد بكل المقاييس فى افكاره التى اتمنى ان اكون قدمتها بصورة جيدة ويستقيد بها الجميع وَقُلْ رَبِّ زِدْنِي عِلْمًا ========================================================= المرفق المحدث الاخير: SIS 3.152 (Add City).rar
    1 point
  35. السلام عليكم اخي الكريم شاهد المرفق لعلة يكون المطلوب اقبل تحياتي واحترامي تعديل وحذف.rar
    1 point
  36. السلام عليكم ورحمة الله وبركاته إخواني الأحباب في المنتدى المحبب إلى قلوبنا .. أقدم لكم اليوم شرح فيديو ، لكيفية عمل تصفية متقدمة Advanced Filter بالأكواد .. . والشرح مقدم في عدد 2 فيديو .. الأول لكيفية إدراج موديول وكتابة الأسطر الخاصة بتنفيذ التصفية المتقدمة ، والفيديو الثاني لكيفية تنفيذ الكود بدون أزرار بمجرد التغير في ورقة العمل أو التغير في شروط التصفية .. رابط الفيديو الأول : التصفية المتقدمة بالأكواد رابط الفيديو الثاني ومرفق لكم ملفين ..الملف الأول Advanced Filter VBA خاص بالفيديو الأول ، والملف المسمى Advanced Filter Worksheet_Change خاص بالفيديو الثاني أرجو أن ينال الدرس إعجابكم ، وتستفيدوا منه ولا أنتظر منكم سوى دعوة بظهر الغيب ، وادعوا الله لي أن يجعل أعمالنا صالحة ولوجهه خالصة ، وأن يجعل أعمالنا في ميزان حسناتنا يوم القيامة ، إنه ولي ذلك والقادر عليه كان معكم أخوكم أبو البراء من منتدى أوفيسنا (دي القفلة بتاعتي لو تلاحظوا .. مش شعبان عبد الرحيم بس اللي عنده القفلة !) حمل الملف من هنا
    1 point
  37. السلام عليكم اخي ياسر انا اول ما ظهر الموضوع في نفس الصفحة هذه رقم ( 2 ) ولم اعرف ان له بدايه في صفحة ثانية علشان كذا لم افهم الموضوع شكرا لك
    1 point
  38. السلام عليكم جرب هذا الكود ان شاء الله يفي بالغرض Sub Ali_Sort_Tble() Dim Tb As ListObject On Error Resume Next For Each Tb In ActiveSheet.ListObjects With Tb .Range.Sort key1:=.ListColumns(1), order1:=xlAscending, _ Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom End With Next On Error GoTo 0 End Sub
    1 point
  39. ملاحظة : يوجد معادلة مميزة جدا لاستاذنا الخالدي علي هذا الرابط , المطلوب مختلف قليلا لكن المعادلة تستحق الذكر (ترتيب اكثر من شرط بنفس المعادلة) http://www.officena.net/ib/index.php?showtopic=46663#entry279751 تحياتي
    1 point
  40. هذا ما كنت اعرفه ، فجزاك الله خيرا على هذه المعلومة ولكن نرجع لأصل الموضوع اللي بسببه انا وضعت الكود ، فنرى مدى ما يمكن ان يصل اليه التعقيد عن طريق الداله Format ، وانا على يقين بأنك لم تصل للطريقة الصحيحة للكود من اول مرة او مرتين لهذا السبب ، اعتقد بأن الدالة DateFormat تسهل الكود كثيرا جعفر
    1 point
  41. اخي جعفر طبعا فكرة ادخال الدالة format في الطرفين : طرف المعيار وطرف القيمة المعلمة ! ليست جديدة عليكم ولكن قد يكون تطبيقها هو الذي جعلكم تبحثون عن فكرة وهي ابسط حقوق المبرمج ! الآن راح نشوف الاكسس لضمان تساوي التنسيق ! في ال sql Set rst = CurrentDb.OpenRecordset("Select DISTINCT cen, [Date] From tbl_T Where format([date],'dd/mm/yyyy')='" & Format(idate, "dd/mm/yyyy") & "'") هنا نلاحظ ان السر في عدم استخدام # واستبدالها ب ' لانه اصبحت المقارنة نصية ! والافضل وضع تنسيق التاريخ بهذا الشكل mmddyyyy في دالة ال dcocunt RC4 = DCount("*", "tbl_T", "format([Date],""ddmmyyyy"") =Format(idate, ""ddmmyyyy"")") بالتوفيق
    1 point
  42. السلام عليكم أخوي رمهان انا قلت في اول الموضوع: يعني كنت اتوصل للمطلوب ، ولكن وللأسف بعد مجموعة محاولات !! وانا فاهم قصدك ، وطريقتك بتعطي الاجابة الصحيحة ، ولكن ، مو دائما انت محتاج تستعمل Format ، فمرة تحتاج ومرة لا ، ومرة M/D/YY ومرة dd/mm/yyyy ، وهكذا ، وصدقني لما عندك برنامج مستعجل وتشتغل عليه ليل نهار والزبون على راسك ، فما دائما تنتبه لـ Format ، إسألني وانا اخبرك كم مرة صارت معي ، الى ان انتبه لها بعد ما احك راسي واطيّح الشعرتين الباقيات على راسي الدالة هذه ، ومن اول مرة وتعطينا النتيجة الصحيحة ، ولأني استفدت منها ، حبيت الكل يستفيد منها جعفر
    1 point
  43. مرحبا اخي جعفر اريدك ان تعمل المعيار التالي وبعدين اقول لك ايش الهرجة !! Set rst = CurrentDb.OpenRecordset("Select DISTINCT cen, [Date] From tbl_T Where [Date]=#" & Format(Me.idate, "m/d/yy") & "#") RC4 = DCount("*", "tbl_T", "[Date]=#" & Format(Me.idate, "m/d/yy") & "#") تحياتي
    1 point
  44. وللفائدة في المرفق ايضا يتم الترتيب كل فصل على حده في أمان الله ترتيب حسب الفصل المجموع والتاريخ والاسم+الغياب.rar
    1 point
  45. الرد عندك أخي و ليس عندي أنا أعطيتك الطريقة التي ستعمل بها , أما موضوع البيانات و تحديثها فهذا أمر يعود لك تحتاج الى تحديث البيانات المدخلة طبقا للأسعار الفعلية هذا أمر لا أستطيع مساعدتك فيه .
    1 point
×
×
  • اضف...

Important Information