بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
نجوم المشاركات
Popular Content
Showing content with the highest reputation on 11/19/18 in مشاركات
-
اتفضل اليك هذا Private Sub cmdBrowse_Click() Dim spl() As String Dim tmp As String tmp = GetBrowseFolder("اختيار المجلد المطلوب :") If Len(tmp) > 0 Then Source = tmp Me.path.SetFocus path.Text = Source spl = Split(Me.path, "\") Me.dn = spl(UBound(spl)) Me.sn = spl(UBound(spl) - 1) End If End Sub Database1_2.accdb3 points
-
جرب هذا الشيء الكود Option Explicit Sub give_data() Dim My_sh As Worksheet Set My_sh = Sheets("salim") If ActiveSheet.Name <> My_sh.Name Then Exit Sub Dim i As Byte Dim Fasl$ Dim m%: m = 2 With My_sh Dim rg As Range: Set rg = .Range("d3:d6") .Range("B2:b" & Rows.Count).ClearContents For i = 1 To 4 Fasl = rg.Cells(i).Offset(, 1) & " " .Range("b" & m).Resize(rg.Cells(i)) = Fasl m = m + rg.Cells(i) Next End With End Sub الملف tekrar_Salim.xlsm2 points
-
2 points
-
السلام عليكم ورحمة الله وبركاته اولا : كيف نعرف ان هذا الطالب راسب ام ناجح و بأي مواد بعدين نقدر نعمل لك ماتريد2 points
-
اعتذر منكم اخواني الأعزاء على غيابي الطويل عن الأكسس وذلك لأني كنت اعمل على لغة برمجة المواقع php + js الأخوة الافاضل الذين يريدون عمل برنامج يعمل على جهاز معين مدمج معه الفترة التجريبية انصحكم بالاتي اولاً انا كنت افكر بنفس طريقتكم وهي دمج "الطريقة الثلاثية لحماية البرنامج + عمل فترة تجريبية محددة عن طريق مقارنة التاريخ" وبعد تعمقي في تلك الطريقة خلصت الى نتيجة وهي ان افضل طريقة على الاطلاق هي طريقة جعل البرنامج يعمل لمدة معينة مثلاً 30 يوم وبعدها يغلق ولا يعمل مالم يتم تفعيله "سأفصل هذه الفكرة بعد قليل" اما طريقة حماية البرنامج وجعله لايعمل الا على جهاز واحد فهي فكرة لابأس بها لكنها غير ضرورية لانك ببساطة لايهمك لو تم نسخ البرنامج على جهاز اخر حتى لو تم نسخه على 100 جهاز فانت برمجته ليعمل بشكل كامل على جهاز واحد فقط الذي قام بتفعيل البرنامج اما الذين قاموا بنسخه على اجهزة اخرى فسوف يبدأ يحسب معهم الفترة التجريبية وهي 30 يوم كما اسلفنا بدون امكانية عمل جميع وظائف البرنامج قد يسأل سائل ويقول لا اريد ان اجعل الاشخاص الذين ليست لهم علاقة بعمل البرنامج ان يشتغلوا عليه حتى ولو كان بالفترة التجريبية .. نعم لابأس بأمكانك منح تصاريح معينة للأشخاص الذين تود ان يجربوا البرنامج ومن ليس لديه التصريح لايستطيع تجربة البرنامج وبذلك انت تخلصت من المشكلة "تابع الموضوع لمعرفة كيف يتم ذلك" نأتي الى فكرة عمل البرنامج لفترة تجريبية معينة وهي 30 يوم مثلاً فكرت فيها طويلاً جداً وقارنت عدة طرق منها من اقترح ان يتم مقارنة تاريخ اول تشغيل للبرنامج مع التاريخ الحالي وهي ليست عملية من وجهة نظري لكون ان المجرب للبرنامج قد يعمل عليه مرة او مرتين خلال الشهر لذلك ليس من المنطقي ان يقفل البرنامج بعد العمل عليه مرة او مرتين ..ومنهم من اقترح قراءة تاريخ الجهاز وهذا الامر يمكن التلاعب به طبعاً ومنهم من اقترح تشغيل البرنامج لعدد محدد من المرات وهو امر ليس منطقي ايضاً لان هنالك اشخاص يجربون البرنامج 100 مرة في اول يوم وهنالك اقتراحات اخرى كثيرة فوجدت انسب طريقة وافضلها بلا منازع هو تسجيل الوقت الذي يستغرقه البرنامج في العمل فما ان يصل مجموع الاوقات 30 يوم حينها يقفل البرنامج ويطالب بالتفعيل .. ذلك يتم كالتالي: في بداية تشغيل البرنامج لاول مرة سيكون هنالك قيمة مخزنة في "جدول مخفي" ومشفرة وهذه القيمة هي الفترة التي تريد ان يعمل بها البرنامج ستكون مقاسة بالثواني كالتالي اضرب 30 يوم × 24 ساعة × 60 دقيقة × 60 ثانية = 2592000 ثانية القيمة هذه ستخزنها في جدول بعد تشفيرها وتعمل على اخفاء الجدول لاحقاً الان بعد تشغيل البرنامج على اي جهاز يبدأ البرنامج بفحص قيمة في الريجستري ولتكن القيمة 1 فإذا وجدها فذلك يعني ان البرنامج مفعل على هذا الجهاز والا فان البرنامج سيقوم بعد الثواني وتخزين العدد في نفس الجدول المخفي السابق ذكره ... القيمة المخزنة طبعاً يجب ان يتم تحديثها كل دقيقة مثلاً .. فالنفرض ان المستخدم قام بتشغيل البرنامج لمدة نصف ساعة خلال المدة التجريبية فسيقوم البرنامج بتخزين القيمة 0 في الجدول عند اول ثانية من التشغيل ومن ثم بعد مرور دقيقة واحدة يصبح العدد 0 + 60ثانية وبعد مرور دقيقتين يصبح العدد 60ثانية + 60 ثانية اخرى وهكذا الى ان يصبح لديك مامجموعه نصف ساعة .. اليوم الاخر الذي يشتغل فيه البرنامج سيكمل العد بنفس الطريقة الى ان يصل الى الرقم الذي خزناه في الاول وهو 30 يوم اي 2592000 ثانية عندها سيتم غلق البرنامج ومطالبة المستخدم بتفعيل البرنامج هذه انسب طريقة من حيث انها لاتعتمد على وقت الجهاز في حال قام المستخدم بالتلاعب في التوقيت او التاريخ بشكل عام كما ان المستخدم لايستطيع التلاعب في الجدول لكون الثواني التي يتم تخزينها ستكون مشفرة بدالة الهاش مثلاً كما ان تفعيل البرنامج سيعتمد على تخزين رقم في الريجستري الذي يخص جهاز واحد فقط هنا اتوقف عند نقطة مهمة وهي ان الكود الذي يتم تفعيل البرنامج به يكون ناتج عن ماذا؟ هل اقوم بتوليد كود التفعيل بناءاً على سيريال الهارد ام بناءاً على سيريال اللوحة الأم ام غير ذلك طبعاً بما ان السيريال الذي يتم تفعيل البرنامج عن طريقه متولد من معادلة حسابية مثلاً سيريال الهارد × 2 + 5 مثلاً فهذا يعني ان السيريال حتى وان تسرب لشخص آخر وحاول ذلك الشخص ان يشغل البرنامج على جهازه فلن يتم التفعيل لان رقم الهارد ليس واحد طبعاً كلنا يعلم ان رقم الهارد يمكن تغييره كما انه يتغير تلقائياً بعد الفورمات لذلك فان الاعتماد على رقم الهارد لتوليد كود التفعيل ليس عملياً لان الشخص الذي اشترى منك كود التفعيل قد يقوم بتغيير الويندوز وعندما يثبت ويندوز اخر فان البرنامج لن يتفعل لديه عندما يستعمل كود التفعيل الذي اشراه منك وهذا امر غير جيد هل انستبدل المعادلة السابقة ونضع سيريال اللوحة الام مكانها؟ الاجابة لا لانك ستواجه نفس المشكلة فجميع سيريلات الجهاز تتغير بتغيير نظام التشغيل بلا استثناء "اقولها بعد التجربة" اذن ماهو الحل البديل؟ الحل البديل من رأيي هو ان تضع مكان سيريال الهارد في المعادلة السابقة باسوورد خاص بالعميل لايعرفه احد الا هو كيف ذلك: عندما يذهب العميل الى زر امر تفعيل البرنامج تظهر له نافذة تطالبه بادخال كلمة السر الخاصة به .. عندما يدخل مثلاً 54321 يقوم البرنامج باخذ تلك القيمة وادخالها في المعادلة السابقة 54321 × 2 + 5 ويظهر له الناتج وهو 108647 فتقوم انت بطلب منه رمز البرنامج هذا فيرسله لك وانت تدخله في معادلة اخرى على سبيل المثال 108647 × 7 وتعطيه الناتج الذي سيكون هو رقم التفعيل 760529 .. سيقوم العميل بادخال الرقم الجديد في خانة التفعيل ويضغط على زر التفعيل .. سيقوم البرنامج بعمل نفس المعادلة التي اجريتها انت 108647 × 7 ومقارنة النتيجة برقم التفعيل الذي ارسلته له فإن كان نفسه فهذا يعني ان البرنامج يعمل عليه نفس الشخص الذي اشترى حقوقه بتلك الطريقة فانت لاتجعل العميل لديك مقيد بالعمل على جهاز واحد فهو لديه حقوق البرنامج ويستطيع تشغيله على اكثر من جهاز اما اذا اردت اجبار المستخدم على العمل على جهاز واحد حينها يمكنك ادخال اسم المعالج في المعادلة "اسم المعالج لايتغير بتغيير نظام التشغيل" .. اسم المعالج يحتوي على ارقام بالعادة لذلك انت ستأخذ الارقام الموجودة مع اسم المعالج وتدخلها في المعادلة وبذلك فلن يستطيع العميل ان يفعل البرنامج على اكثر من جهاز اتمنى ان تكون الفكرة واضحة وآسف عالاطالة .. واي استفسار حاضر ان شاء الله تحياتي2 points
-
2 points
-
السلام عليكم ورحمة الله تعالى وبركاته موضوع اليوم هى اداة صممتها بفيجول بيسك دوت نت مجرد حلقة وصل بين المستخدم وقاعدة البيانات بمعنى اكثر انت كمصمم برامج من خلال قواعد بيانات اكسس سيقلقك موضوع تمكين المحتوى الخاص بك اى تمكين كافة وحدات الماكرو لكى تعمل قاعدة البيانات بصورة طبيعية ولا يقلق العميل وبالتالى لن تذهب الى كل عميل لتخبره ان قاعدة بياناته لا تعمل لانه عليه اولا اتباع خطوات كذا وكذا لتمكين الماكرو الاخوة هنا مشكورين قامو بشرح اكثر من مرة تمكين المحتوى بشتى الطرق اى انا لم اتى بجديد فقط وفرت عليك عناء الاكواد كل ما عليك فعله هو تسمية قاعدة بياناتك باسم AccessSoft ولا يهم اصدارها فالاداة تعمل على الاصدارات من 2003 حتى 2016 وبعد تسميتها تضعها فى نفس مسار الاداة وسيتم فتح قاعدة البيانات الخاصة بك من خلال الاداة اى انه يمكنك تحزيم قاعدة بياناتك مع الاداة باى برنامج تحويل قاعدة البيانات الى ملف تنفيذى .exe وعند التحزيم ستخبر البرنامج ان يتم العمل من خلال الاداة وليس قاعدة البيانات ويمكنك التحزيم ببرنامج Setup Factory وهذه صورة منه تعقيب بسيط قام اخونا الفاضل جعفر @jjafferr بشرح طريقته الخاصة فى ذلك فى هذا الموضوع ولا غبار على المبتكرين نحن فقط نتعلم منهم ولكن كانت مشكلة بسيط لم اجد لها حل عند كتابة كود الاستاذ جعفر كان لابد من وضع يدويا مسار محدد لقاعدة البيانات داخل الكود كانت هذه مشكله اذ يمكن تغير المسار فى وقت او قد تختلف المسارات من جهاز الى اخر فقط اضفت كود بسيط لحل هذه المشكلة عن طريق هذه الاداة والان مع الاداة الصور مع الشرح ملحوظة لايهم نوع قواعد البيانات حتى لو كانت .mde او .accde الاداة ستقرأها فقط ضع قاعدة البيانات الخاصة بك فى نفس مسار الاداة وقم بتسمية قاعدة البيانات الى AccessSoft واضغط على الاداة وستقوم بفتح قاعدة بيانات ثم الاختفاء والاغلاق لتتعامل مع قاعدة بيناتاك بكل اريحية عند تحميل تحديث جديد ستجده فى نفس مسار قاعدة البيانات اتمنى من الله ان اكون قد وفقت فى الشرح اتمنى التجربة واعلامى بالنتيجة Link2securityDb.rar1 point
-
1 point
-
1 point
-
ما عليك الا ان تدرس الكود خطوة خطوة و يتضح لك جيداً ماذا يعني كل سطر و كل متغير فيه وعلى هذا الاساس يمكنك التعديل1 point
-
استبدل الحرف Bفي هذا الجزء من المعادلة بالحرف N COUNTIF($O$2:O2;$M$3:$M$200)= $B$3:$B$2001 point
-
كان فى خطأ عند count if المفروض تكون o2 مش o3 والمفروض تدوس ctrl + shift +enter لكى تعمل الدالة استاذ سليم.xlsx1 point
-
1 point
-
1 point
-
أخي محمد يحدث هذا بسبب أختلاف أصدار وينرار حمل أحدث أصدار من موقع معتز .. وهذا الملف بدون ضغط Employee 04 .accdb1 point
-
1 point
-
1 point
-
1 point
-
اتفضل اليك هذا Option Compare Database Private Sub ComFrq_AfterUpdate() Me.ComNam = Null Call Tesfie End Sub Private Sub command10_Click() Me.ComMnth = Null Me.ComFrq = Null Me.ComNam = Null Call Tesfie End Sub Private Sub command9_Click() DoCmd.OpenForm "KBT", acNormal End Sub Private Sub ComMnth_AfterUpdate() Me.ComFrq = Null Me.ComNam = Null Call Tesfie End Sub Private Sub Form_Load() Call Tesfie End Sub Function Tesfie() If Len(Me.ComMnth & "") = 0 And Len(Me.ComFrq & "") = 0 Then Me.ComNam.RowSource = "SELECT KBT.nam FROM KBT GROUP BY KBT.nam; " Me.ComFrq.RowSource = "SELECT KBT.frq FROM KBT GROUP BY KBT.frq; " ElseIf Len(Me.ComMnth & "") = 0 And Len(Me.ComFrq & "") <> 0 Then Me.ComNam.RowSource = "SELECT KBT.nam FROM KBT WHERE (((KBT.frq)=Forms!TSF!ComFrq)) GROUP BY KBT.nam; " Me.ComFrq.RowSource = "SELECT KBT.frq FROM KBT GROUP BY KBT.frq; " ElseIf Len(Me.ComMnth & "") <> 0 And Len(Me.ComFrq & "") = 0 Then Me.ComNam.RowSource = "SELECT KBT.nam FROM KBT WHERE (((KBT.mnth)=Forms!TSF!ComMnth)) GROUP BY KBT.nam; " Me.ComFrq.RowSource = "SELECT KBT.frq FROM KBT WHERE (((KBT.mnth)=[Forms]![TSF]![ComMnth])) GROUP BY KBT.frq; " ElseIf Len(Me.ComMnth & "") <> 0 And Len(Me.ComFrq & "") <> 0 Then Me.ComNam.RowSource = "SELECT KBT.nam FROM KBT WHERE (((KBT.mnth)=Forms!TSF!ComMnth) And ((KBT.frq)=Forms!TSF!ComFrq)) GROUP BY KBT.nam; " Me.ComFrq.RowSource = "SELECT KBT.frq FROM KBT GROUP BY KBT.frq; " End If End Function combo.accdb1 point
-
قمت بتسجيل الفيديو كما طلبت وهيمت بأرسالة ألا أني راجعت مقطع الفيديو قبل أرسالة فوجدت أني تعجلت .. كانت المشكلة فعلاُ موجودة بالملف الأول قبل تعديلك الأخير لأني جربتها أكثر من مرة وفي الملف الأخير وجدتها أنه تم حلها .. تعجلت بعد أعادة الفترة الى 3 اشهر .. بأن قمت بالضغط على زر التسجيل قبل أن أعيد لصق رقم التفعيل مرة أخرى لأنه يتم تفريغ الحقل أذا كان الرقم خطاء بالنسبة بطء فتح الملف ShivanHimaye هل بسبب أني أستخدم نسخة أوفس 2016 32 عربي؟ تمنيت أن تظيف بنفسك بقية الفترات .. لأني مشغول جداً بأيجاد حل صافي راتب الموظف .. الذي أتمنى أيجاد حل لذلك وفي الأخير بارك الله فيك أستاذ @Shivan Rekany وجزيت عنا خيرا عمل ومجهود رائع1 point
-
حسب ما فهمت من مطلوبك اتفضل اليك هذا استعلام SELECT DISTINCTROW tabol_item.id_sand, tabol_item.id_fatora, tabol_item.sub_id, tabol_fatora.costmor_name, Sum(tabol_item.Qote_item) AS SumمنQote_item, Sum(tabol_item.item_prais) AS Sumمنitem_prais, tabol_fatora.shk_ok, tabol_fatora.user_add, tabol_fatora.date_fatora, Sum([Qote_item]*[item_prais]) AS Expr1, Nz(DLookUp("Sum([tabol_sdad_mord]![item_preis])","[tabol_sdad_mord]","[tabol_sdad_mord]![fatora_no]='" & [id_fatora] & "'"),0) AS Expr2 FROM tabol_fatora INNER JOIN tabol_item ON tabol_fatora.id_sand = tabol_item.id_sand GROUP BY tabol_item.id_sand, tabol_item.id_fatora, tabol_item.sub_id, tabol_fatora.costmor_name, tabol_fatora.shk_ok, tabol_fatora.user_add, tabol_fatora.date_fatora HAVING (((tabol_fatora.date_fatora) Between [forms]![form3]![h1] And [forms]![form3]![h2])); PROGRMS.rar1 point
-
وعليكم السلام ورحمة الله وبركاته استخدم هذا الكود عند النقر المزدوج: 'With CodeContextObject ' DoCmd.OpenForm "22tblm", acNormal, "", "[المعرف]=" & .المعرف, acEdit, acDialog DoCmd.OpenForm "22tblm", acNormal, , "[المعرف]= " & Forms![برنامج الفروع و المؤسسات].tblm1.Form("[المعرف]") & "", acFormEdit ' End With طبعاً: احذف الكود القديم لديك بعد ذلك: اذهب الى النموذج 22tblm وغير في خصائصه كالتالي: دورة: السجل الحالي طريقة العرض الافتراضية: نموذج مفرد ولو أحببت اجعل منبثق : نعم شكلي او مشروط: نعم ::: ملاحظة: لم افهم ما المغزى من زر الحذف في النموذج 22tblm برنامج المجالس الخاص بك1 point
-
زيادة في اثراء الموضوع هذا الكود Option Explicit Sub copy_as_you_want() Dim i, c As Integer Dim Cont Dim Lr As Long Lr = ActiveSheet.Cells(Rows.count, 3).End(3).Row Range("c3:c" & Lr).ClearContents i = 3 c = 3 Do While Cells(i, 1) <> "" Cont = Cells(i, 1).Offset(0, 1).Value If Not IsNumeric(Cont) Or Cont = "" Or Cont = 0 Then i = i + 1: GoTo 1 Cont = Int(Abs(Cont)) Range("c" & c & ":c" & c + Cont - 1).Value = Cells(i, 1).Value i = i + 1 c = c + Cont 1: Loop End Sub1 point
-
ActiveSheet.Range("E6:E1000").FormulaArray = "=IF(RC[-1]:R[994]C[-1]>=0,RC[-1]:R[994]C[-1],1)"1 point
-
السلام عليكم ورحمة الله وبركاتة بعد اذن الاساتذه الكرام اسمحوا لي المشاركة في هذا الموضوع علما بان طلب الاخ قد استجيب له بطريقة ممتازة من الاستاذ القدير بن علية حاجي اسأل الله العلي القدير ان يجزية كل خير وفي مشاركتي قمت بأعداد ملف عن طريق المعادلات عن كيفية تحليل وتوزيع المصاريف المدفوعة مقدما لعة يكون فيه استفاده للبعض. المصاريف المدفوعة مقدما.rar1 point
-
الأستاذ /mada4top السلام عليكم ورحمة الله وبركاته بعد إذن الأستاذ / خزاني جزاه الله خيراً على الكود وإليك الملف به تفيط عربي وانجليزي . تفقيط بالريال.rar تفقيط انجليزي.rar1 point
-
السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، قمت ببعض التغييرات على المعادلات الخاصة بالأشهر وعدد أيام كل شهر وإضافة شهور السنة الموالية... تم إضافة معادلة (طويلة بعض الشيء لعله يمكن تبسيطها) التي تقوم بحساب أقساط الشهور حسب الفترات المدرجة في العمودين C و D والمبالغ المحجوزة في العمودين F و G. ويمكن مقارنة نتائج هذه المعادلات مع ما قمتَ بحسابه بطريقة يدوية في ملفك المرفق (بداية من السطر 8 والملونة بالأصفر)... أعتقد أن المعادلات (رغم طولها) قد أوفت المطلوب... أرجو أني وفقت في تقريب المطلوب... وإذا كان هناك تساؤلات أخرى أو بعض الأخطاء في المعادلات فستجدني بإذن الله في الخدمة في كل حين... أخوك بن علية Prepaid Exp. Settlement.rar1 point
-
أخى وأستاذى الكبير / بن علية السلام عليكم ،،،،، خلال بحثى بالمنتدى عن كيفية تحليل (إستهلاك) المصروفات المدفوعة مقدماً وجدت هذا الموضوع الشيق ولكنى وددت لو أنه يغطى ما أحتاجة بملفى المرفق والذى أريد من خلالة تحليل المصروفات المدفوعة مقدماً على الفترة المحددة لكل مصروف مع مراعاة عدد أيام كل شهر بالفترة وذلك كالتالى :- - ستجد أخى بالعمودان C & D الفترة المحددة والتى يغطيها المصروف ، وقد يحدث أن تغطى الفترة المالية سنتان ماليتان كما هو بالسطر رقم 7 حيث تجد أن فترة المصروف تبدأ من 23/7/2012 وحتى 22/7/2013. - قمت بإستهلاك المصروف وفقاً لنسبة عدد أيام كل شهر إلى عدد أيام الفترة المالية كلها مثال : السطر رقم 4 " بند وثيقة تأمين السيارة المرسيدس " فى شهر يناير قمت بضرب 9275 جم فى 31 يوم (عدد أيام الشهر) / 204 (عدد أيام الفترة) ، وكذلك الحال فى شهر فبراير ولكن مع الإختلاف حيث أن عدد أيامة هى (29 يوم). - السطر رقم (7) " بند وثيقة تأمين السيارة المرسيدس " (إستطراد : إن لاحظت سطر 4 مع هذا السطر فستجد أن ذلك هو تجديد للوثيقة السابقة) والذى يغطى فترة من 23/7/2012 وحتى 22/7/2013 فستجد أنى قد قمت بإدخال قيم صفرية فى الستة أشهر الأولى (يناير : يونيو) ثم إتبعت نفس الأسلوب الموضح أعلاة فى الأشهر الستة التالية (يوليو : ديسمبر) . فهل بالإمكان أن أقوم فقط بإدخال الفترة المالية بالعمودان C & D ويتم عمل كافة ماسبق بالمعادلات بحيث أصل إلى نفس النتائج ولكن بشكل آلى ودون الإضطرار إلى حساب عدد الأيام إدخال القيم باليد ....؟ أرجو أن أكون قد وفقت فى شرح ما أقصدة. خالص شكرى وتقديرى أخوك عيد مصطفى Prepaid Exp. Settlement.rar1 point
-
الأخ علي واضح أن الأمر توقف عند اللغة وتحديداً الفرق بين المذكر والمؤنث وحسب معرفتي البسيطة بالحاسوب فانه من الصعب على الحاسوب تصنيف الاسماء المذكر من المؤنث والعربية تواجه دائما مشاكل مع الحاسوب ودورنا نحن ابناء العرب ان نساندها ونكمل النقص. بالمراجعة لايوجد خطأ فالوحدة النمطية السابقة فهي معدة لتعمل مع الاسماء المذكرة مثل الريال وانت تحتاج لوحدة تعمل مع الاسماء المؤنثة لانك تحتاج لتفقيط الدرجات لأن الدرجة مؤنثة.. هدية لجميع الاخوة العرب وأعضاء المنتدى أضع الوحدة النمطية السابقة بعد أن قمت بتعديلها بنفسي لوحدة مذكرة لتعمل مع الاسماء المذكرة ووحدة مؤنثة لتعمل مع الاسماء المؤنثة والاثنان في نفس البرنامج ويتم استدعاء الوظيفة كالآتي: الأسماء المذكرة نستدعي ModuleM عن طريق الوظيفة NoToTxtM الأسماء المؤنثة نستدعي ModuleF عن طريق الوظيفة NoToTxtF جرب وفي إنتظار رأيك لعمل أي تعديل لغوي يحفف الفائدة للجميع Male and Female.zip1 point
-
السلام عليكم ورحمة الله وبركاته. كل عام وانتم بخير. تفضل اخي علي هذا نموذج للتفقيط للعملات وقد قمت بتعديله حتي يتساير مع تفقيط الدرجات وبه تفقيط بالعربي واخر بالأنجليزي. والله الموفق. حل تفقيط الدرجات نهائى.rar1 point
-
السلام عليكم ورحمة الله تعالى وبركاته لق قمت بمحاولة في ملفك من يوم الجمعة ولكن للأسف انقطعت عندي النت إلى اليوم وأنا الآن موجود خارج البيت لأحاول أن أرسل لك عملي على الملف حسب ما فهمته من معطياتك وطلبك واستعنت من موضوع سابق "مشكلة تضليل خلايا" وضعت فيه كودا وقمت بتغيير الكود ونسقته على ملفك (أرجو أن يكون المطلوب) على أساس أن القسط الأول أو القسط الأخير يتم حسابه وإدخاله يدويا وكنت أنوي يومها (يوم الجمعة) أن أرسل ردا أستفسر فيه كيفية إدخال القسط الأول أو الأخير وقد قام بدلك أخي وحبيبي هشام وأيضا لأسألك على الحسابات الطويلة التي قمت بها في تعيين الأيام والشهور ولم أفهم ما قمت به كان من المفروض أن تستعمل فقط الدالة DATEDIF وباستعمال خواصها في تعيين عدد الأيام والشهور وحتى السنوات... المهم وضعت لك في الملف المرفق كل المطلوب (حسب فهمي للموضوع) وما عليك إلا وضع المبلغ الإجمالي وتاريخي فترة التسديد وإدخال القسط الأول أو القسط الأخير وسيتم توزيع الأقساط على الشهور في الفترة المعطاة.... إن شاء الله يكون العمل في الملف المرفق هو المطلوب... وإدا كانت هناك طلبات أخرى أو تغييرات على الكود فأنا في الخدمة أو أحد إخوتي الكرام... ورجاء إدا كنت في الاتصال ضع لي ردا مباشرة بعد مراقبة عملي في الملف المرفق مادمت موجودا في مقهى النت... أخوك بن علية تحليل المصاريف المدفوعة مقدما.rar1 point