نجوم المشاركات
Popular Content
Showing content with the highest reputation on 05/24/15 in all areas
-
بسم الله الرحمن الرحيم ............ والصلاة والسلام على رسولنا الكريم ............ أحببت أن أقدم هدية لأحبابي أعضاء وزوار منتدى أوفيسنا ملتقى مبرمجي الأوفيس العرب المدرسة الأولى التي تعلمت منها اساسيات برمجة الأوفيس وخاصة الإكسل فتوكلت على الله وقمت بعمل أبسط كود لتخفيض أمان الأكسس برمجياً لجميع إصدارات الأوفيس حتى التي لم تصدر منها بعد **************** ولقد تعلمت في هذا الصرح أن المبرمج الحق الذي يؤدي ما هو مطلوب بأقل كود ممكن بل قل بأقل عدد لحروف الكود إن أمكن //////////////////////// وكنت قد أصدرت قبل ذلك ملفات كثيرة صغيرة الحجم جداً وتؤدي مهام كبيرة جداً سميت هذه السلسلة ما خف وزنه وغلا ثمنه كان منها على سبيل المثال القرآن بالصوت والصورة إرسال البريد من الأكسس مباشرة أصغر كود لقراءة وتغيير دقة الشاشة وغيرها الكثير +++++++++++++++++ وأخيرا وليس بآخر أتقدم بالشكر لكل من ساهم في حل هذه المشكلة على كل ما قدموه في هذا المجال //////////////////////////////////////// وبناء على النقاشات الممتعة للإخوة الذين ظهرت معهم رسائل خطأ في بعض الأحيان تم اختصار الكود أكثر مما هو عليه ليصبح سطرا واحداً CreateObject("WScript.Shell").RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application.Version & "\Access\Security\" & IIf(Application.Version < 12, "Level", "VBAWarnings"), "1", "REG_DWORD" ........... ويوجد مرفق جديد به الملف بعد اختصار الكود وجعله سطرا واحدا ولا تنسوا أخاكم محمد صالح من صالح دعائكم MasAcessSecurity_mdb.rar MasAcessSecurity2.rar1 point
-
أخوتي الأعزاء عند التجوال في منتدانا الطيب نجد الكثير من التساؤلات و الاستفسارات والنقاشات و التطبيقات التي تتعلق بميزة الارشفة الملحقة بتطبيقات مختلفة بغض النظر عن غاياتها ، حيث ان التطورات التقنية في مجال البرمجة اتاحت المجال للكثير من الافكار وشطحات الخيال في مجال استخدام الارشفة و اساليبها المختلفة في التطبيقات البرمجية بغض النظر عن لغة البرمجة المستخدمة او الغاية من التطبيق البرمجي او مستوى بساطة او تعقيد هذا التطبيق. وقد عكفت منذ فترة على التفكير في هذه الاساليب و امعنت النظر في مناهجهاوقلبت الامر بين ما علمني ربي من وجوهه ، وخرجت بتجارب جيدة نفعتني ومن حولي ، منها البسيط ومنها المعقد المتعب ، ومنها السهل ومنهاالمركب ، وفي جولات من العصف الذهني والتدريب و التجريب خرجت بنتائج وتطبيقات لا بأس بها جربت منها ما نفعني به الله في التطبيقات العاملة في الشركة التي اتولى ادارتها ، وفي غيرها. وبعد تفكير و استشارة لأهل الرأي ، رأيت و الله المستعان ان أبدا موضوعا جديدا حول هذا الموضوع تحديدا ، أسعى فيه- بتوفيق من الله - لتجميع الحوارات والمناقشات و التطبيقات الخاصة بهذا الموضوع في مكان واحد ، تركيزا للجهد وتنسيقا له سواءا أكان مني أو من كل الاخوة و الاخوات الزملاء الافاضل في هذا المنتدى ، ولي فيه منهج بالطرح وترتيب متصور ، قد أصيب فيه وقد أخطئ ، ولي عند الله وعد بأجرين للاولى وفي الثانية أجر، آملا من كافة الاخوة و الزملاء ان يعينوني ما استطاعو بالحوار والنقاش والتطبيق ، وان وجدتم مني بساطة او عدم دراية كافية فلتتصدقوا على بالعون و الرأي ، وان كان مني خوض فيما لا أعلم فنبهوني بأدب طلاب العلم وسعة صدرهم ، وان كان منكم من يرى بنفسة القدرة على ادارة هذا الموضوع بما لا استطيع فله الصدارة ومنكم نستفيد . والله من وراء القصد وهو المستعان1 point
-
أخواني واخواتي أعضاء صرحنا العظيم اوفيسنا **************** وجد ان موضوع مستحقات نهاية الخدمة بالاخص في السعودية يشغل بال الكثيرون من المهتمين بالمجال نظرا لما فيه من حقوق واعباء ففكرت في عمل النموذج حتي لا تضيع الحقوق علي اصحابها نتيجة خطأ في تطبيق قاعدة في قانون العمل او لائحة الشركة راعيت في النموذج قوانين مكتب العمل التي نظمت حقوق العامل عند نهاية العقد او الاستغناء عنه او الاستقالة بحالتها المختلفة 1- اذا كانت فترة العامل اقل من سنتين 2- اذا كانت فترة العامل مابين السنتين والخمس سنوات 3- اذا كانت فترة العامل مابين 5 :10 سنوات 4- اذا كانت فترة العامل اكبر من عشر سنوات وكذلك في الادخال بما يتناسب مع سياسة الشركة اوعقد العامل مثال علي ذلك بدل السكن ( بعض الشركات لاتدخله) ضمن راتب المكافأة وشركات اخري تحسبه بما يقابل راتب شهرين عن سنة واخري تحسبه بما يقابل ثلاثة شهور وكذلك راعيت بدل الاجازة السنوية (30 يوم عن كل سنة لكامل الفترة ) او( 21 يوم للخمس سنوات الاولي ومازاد عنها 30 يوم ) طرق ادخال التاريخ عن طريق الفورم لعدم الاخطاء استخدام التقويم الميلادي او الهجري - ام القري في الحساب تم تخصيص ملاحظات تحت كل حساب يظهر العمليات والقوانين التي اتبعت في الحساب وتناولت الموضوع بفكرة جديدة *********** فورم اخري اسميته الادخال السريع ********************* لضمان عدم الاخطاء في الادخال حيث ان كل مرحلة في الفورم لابد من تعبئتها ليمكنك الانتقال للخطوة التالية الي جانب طباعة النموذج بشكله النهائي الشكل الاخير بعد معالجة المدخلات كالتالي انا جعلت موضوع الفورم جزء من قاعدة شئون الموظفيين الجديدة بشكل جديد ان شاء الله قريبا سوف يتم طرحها لكم وارفقت قوانين العمل حسب مكتب العمل السعودي لتكون مرجع في حالة عدم وجود مرجع ثابت او لائحة منظمة لذلك داخل الشركة ويمكنك الاطلاع علي شروط واحكام الحساب عند ضغطك علي خيار " أحكام حساب المستحقات باسفل الفورم ) كما ان بعض الشركات لاتقوم بابرام عقود للعمال فيكون المرجع الاساسي (قانون مكتب العمل ) أدعوا الله سبحانه وتعالي ان اكون وفقت في عملي هذا (( وَمَا أَسْأَلُكُمْ عَلَيْهِ مِنْ أَجْرٍ إِنْ أَجْرِيَ إِلَّا عَلَى رَبِّ الْعَالَمِينَ )) الشعراء/109. ولكنني اطمع بصالح دعائكم بظهر الغيب مستحقات نهاية الخدمة.rar1 point
-
السلام عليكم ورحمة الله تعالى وبركاته ندخل فى الموضوع بالنسبة لربط قاعدة البينات اكسس باالاستضافات والتحكم فى البرنامج الخاص بك من اى مكان فى العالم شرط الاتصال بالانترنت اولا قمت بحجز استضافة مجانيه من هذا الموقع https://somee.com/ وقمت بانشاء جدول SQL للتجربة فقط بهذا البرنامج https://msdn.microsoft.com/en-us/sqlserver2014express.aspx?f=255&MSPPError=-2147217396 ونظرا لطلب الاخوة فى هذا الموضوع http://www.officena.net/ib/index.php?showtopic=61485&hl= بخصوص الربط وجعل قاعدة اكسس مجرد واجهة قمت باعداد هذا المرفق والذى يعتمد على الاكواد المذكورة فى المشاركة السابقة اما ان تنشء اتصال DNS وتستورد منه الجداول من خلال اكسس او تربط الجداول مباشرة بقاعدة اكسس وتضيف وتعدل فيها وقت ما تشاء ومن اى مكان تحب وعند اختيار ربط الجداول ستجد تلقائيا جدول فى قاعدة البيانات باسم mared تستطيع التعدل والاضافة فيه فى امكان اترككم مع المرفق انشاء اتصال DNS.rar1 point
-
أحبائي المهتمين في منتدى الإكسيل.. أرفق إليكم طريقة تشغيل ملف اليوتيوب عن طريق الفورم الشرح في رابط الفيديو تشغيل اليوتيوب.rar1 point
-
السلام عليكم ورحمة الله وبركاته هناك بعض الكلمات المحرمه نقولها ونحن لاندري ؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛؛ الله يلعنك الله لايهنيك الله يرجك الله يظلمك الله يشيلك الله يقلعك االله يحرقك الله يخسك الله يكرهك الله يفشلك الله يقرفك وربط اي صفه حسنه باسم الله لان هذه الصفات ليست من صفات الله والامر خطير كما قال رسول الله صلي الله عليه وسلم فيما معناه(رب كلمه لايلقي لها بالا تهوي به في النار سبعين خريفا) الله يهدينا على اقوالنا الي مانفكر فيها ونرمي بالكلام من غير مانفكر سبحان الله استغفرالله العظيم من كل كلمه قلتها ولم اعطي لها بالا استفغرالله تقبلو تحيات محبتكم ايناس وقلبي حنون[/]1 point
-
تعلمنا على يد أساتذتنا في هذا المنتدى الكريم أن خير إجابة ليست التي تحمل العلم فحسب بل الحلم أيضا فتعلمنا منهم - جزاهم الله عنا كل خير - الإخوة في الله والعمل والمشاركة كأسرة واحدة للوصول للهدف دون انتظار مقابل سوى فضل الله وكفى بها نعمة ومن باب تلك الإخوة أدعو الله عز وجل أن يكون أستاذي وأخونا الكريم آخر الأرض بخير وبصحة جيدة وأن يضمئننا عليه ؛ فهو منذ مطلع شهر إبريل ولم يسجل دخوله إلى المنتدى بانقطاع مفاجئ ؛ فلعل المانع خير1 point
-
الاخ الجليل ياسر خليل سلمت يداك دائما لديك حلول ....لكل ما هو مطروح من الاعضاء والاهم .دوما ما نجد الاستفاده والتعليم مما تطرحه جزاك الله كل الخير1 point
-
سعيد إني قدرت أقدم شئ بسيط لحضرتك وشرفتنا وأسعدني تواجدك أستاذ أسامه وحضرتك تقدر تحدد الإجابة الصحيحة لو ما عندك أي استفسارات أخرى تتعلق بنفس الموضوع في الوقت الحالي والله يوفقك1 point
-
السلام عليكم ورحمة الله تعالى وبركاته نظرا لطلب اخى راعى الغنم وانا اكن لهذا الرجل كل تقدير واحترام كيفية استرجاع الجداول المحذوفة يمكن استرجاع الجداول المحذوفة فى قاعدة بينات اكسس ولكن بثلاث شروط 1 - لم يتم اغلاق قاعدة البانات بعد حذف الجدولا 2 - لم يتم ضغطها 3 - تم حذف الجدول باستخدام واجهة مستخدم اكسس ضع هذا الكود فى وحدة نمطيه Function UnDeleteTable(Optional sName As String) Dim db As DAO.DATABASE Dim tdf As DAO.TableDef Dim sTable As String Dim sSQL As String Dim sMsg As String If IsMissing(sName) Then sName = "RestoredTable" If Len(sName) = 0 Then sName = "RestoredTable" Set db = CurrentDb() For Each tdf In db.TableDefs If Left(tdf.Name, 4) = "~tmp" Then sTable = tdf.Name sSQL = "SELECT [" & sTable & "].* INTO " & sName sSQL = sSQL & " FROM [" & sTable & "];" db.Execute sSQL sMsg = "A deleted table has been restored as " & sName MsgBox sMsg, vbOKOnly, "Restored" GoTo Exit_Undelete End If Next MsgBox "No Recoverable Tables Found", vbOKOnly, "Not Found" Exit_Undelete: Set db = Nothing Exit Function Err_Undelete: MsgBox Err.Description Resume Exit_Undelete End Function ويمكنك استدعائها فقط بهذا الكود UndeleteTable("MyTable") لااعلم مدى اهمية ذلك بالنسبة لكم اخوانى الكرام ولكن ما كنت احبسه عنكم قم بتصميم قاعدة بينات للتجربة وانشء الجداول واضف بسجلاتك ثم قم بمسها واستدعها من خلاا الكود1 point
-
وعليكم السلام ورحمة الله وبركاته أخي في الله ياسين .. يا سيد الحلوين الحمد لله أن تم المطلوب على خير ، وجزيت خيراً على دعائك الطيب ، ولك بمثل إن شاء الله ومشكور على تحديد أفضل إجابة ليظهر الموضوع مجاب :wink2: تقبل ودي واحترامي وتحياتي1 point
-
السلام عليكم ورحمة الله وبركاته الله عليك يا ابو البراء ما شاء الله انت تقراء الأفكار وتصنع المستحيل بالفعل هذا ما اكنت اريده بالظبط سلمت يداك وادخلك الله الفردوس الاعلى المعذرة ..... من لهفتي وانا اترقب ردك الجميل نسيت ارفاق الملف .... وتقبل تحياتي1 point
-
1 point
-
1 point
-
السلام عليكم الشيء الجميل بهذا الكود أنه تم استثناء الأسماء المركبة من الفصل ولذلك فهو عمل يستحق التقدير والثناء1 point
-
1. أخي كريمو ، وكيف استطيع ان اصلح ما قلت ، وانت لم تخبرني ما المشكلة!! وللعلم ، يجب التفريق بين شيئين مختلفين ، الجدول tbl_Loans و الاستعلام qry_Loans ،والاستعلام مجرد أداه للجدول. 2. نعم نستطيع ان نعمل زر لدفع قروض الشهر ، في النموذج FrmDiscountReport للشهر الذي تم اختياره لإستقطاعات الشهر. الزر هو "سدد مبالغ شهر الاقتطاعات" ، وهذا هو الكود الذي يملئ حقول الدفع للشهر المختار: Private Sub cmd_Pay_installments_Click() Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From tbl_Loans Where [Payment_Month]=#" & Me.txtMonth & "#") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For I = 1 To RC rst.Edit 'check, maybe a manual payment is done, so don't over write it If Len(rst!Payment_Made_Cridi & "") = 0 And Not IsNull(rst!Loan_Cridi) Then rst!Payment_Made_Cridi = rst!Loan_Cridi End If If Len(rst!Payment_Made_Elec & "") = 0 And Not IsNull(rst!Loan_Elec) Then rst!Payment_Made_Elec = rst!Loan_Elec End If rst.Update rst.MoveNext Next I MsgBox "Payments made" End Sub يجب ان تعرف ان برنامج القروض الان يعتمد على الجدول tbl_Loans ، لذا ، فجميع خطوات الدفع لابد ان ندخلها في الجدول اولا (طبعا عن طريق النموذج frm_Loans) ، ثم يقوم الاستعلام بأخذ البيانات من هذا الجدول وعمل الحساب مثل ما تريد. 3. انا قلت: "هذه الحقول قد تبدو زيادة عن الازم في الوهلة الاولى ، وان بامكاننا ان نستعيض عن هذه الحقول ببعض الاوامر في الاستعلام (وهذه المشكلة التي كنا نعاني منها في البرنامج السابق) ، ولكنها تسهل الامور إن شاء الله." فجمع الحقلين في استعلام او حتى في تقرير سهل ، ولكن اذا اردت ان تفصلهم اذا كانوا مجتمعين ، فالمسألة ستكون صعبة وللعلم ، هذين الحقلين يتم احتساب نتائجهم عن طريق الوحدة النمطية ، وسترى هناك اننا نقوم بعمل معادلات مختلفة ، واذا اردت انت لاحقا ان تقوم بتغيير شئ ، فكما اخبرتك سابقا ، المعادلات سهلة التغيير الآن ، رجاء ، الغي جميع البيانات من جداول القروض ، وادخل مجموعة بيانات صحيحة ، ثم جرب البرنامج ، واذا اردت اي تعديل ، فرجاء ارسال البرنامج ذو البيانات الصحيحة ، والرجاء ان تكون دقيق في شرح المطلوب ، كالعادة جعفر 11.5.FrmDiscountReport.mdb.zip1 point
-
1 point
-
ونعم الأخوة.....الحمد لله رب العالمين أن لي أخوة لم أرهم ولكنهم يحملون همي ويشعرون بحزني وألمي ....فمن لم يهتم بأمور المسلمين ليس منهم ....أشكر لكم أخي حسن استجابتكم ودعمكم ...وأنا كذلك (لا أهتم كثيراً بالفيس )إلا أنه نوع من التواصل الذي يقرب البعيد. والسلام عليكم ياأبا البراء الغالي.1 point
-
وكما قلت دائما وابدا هناك طريقة رمهانية http://www.officena.net/ib/index.php?showtopic=61621&p=397839 New-up- بالطريقة الرمهانية.rar كل الشكر والتقدير استاذ رمهان جزانا الله واياكم خير الجزاء ولكن انت الاستاذ انا اقل طالب علم فى هذا الصرح الشامخ1 point
-
جزاك الله خيرا استاذ محمد عصام تعديل بسيط على الكود : سنجعل جملة التعديل تاخذ القيمة حسب قيمة العنصر وبدون قيم صريحة في الكود : DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE sss SET sss.a =" & ch Me.Requery DoCmd.SetWarnings True تحياتي1 point
-
السلام عليكم أخي كريمو الثاني بحمد الله ومنته ، توصلت الى عمل الاستعلام والذي يعطي بقية مبلغ القرض Remaining طبعا اضطررت لعمل بعض التغييرات البسيطة على الجدول tbl_Loans ، واهمها هو عمل حقل Loan_Type لسهولة عمل استعلام لاحقا ، سواء لـ Cridi او Elec ، بالاضافة الى عمل حقل خاص لدفعات Cridi ودفعات Elec. هذه الحقول قد تبدو زيادة عن الازم في الوهلة الاولى ، وان بامكاننا ان نستعيض عن هذه الحقول ببعض الاوامر في الاستعلام (وهذه المشكلة التي كنا نعاني منها في البرنامج السابق) ، ولكنها تسهل الامور إن شاء الله. لا يوجد تغيير في طريقة العمل ، ولكن لدفع القرض الشهري ، فيجب عليك ان تفتح نموذج frm_Loans عن طريق الضغط على الزر سداد مبلغ ، وتضيف قيمة الدفعة يدويا (هذا ما اردته انت سابقا ، وخصوصا بأن الموظف الان يستطيع ان يدفع اي مبلغ يريده شهريا ) ، ولقد سهلت عليك ايضا ، بان تنقر الفأرة مرتين في حقل الدفع لذلك الشهر ، ليكتب المبلغ تلقائيا ). هنا وحدة نمطية جديدة Count_Remaining ، وهي التي تعطي Remaining ، بأخذ القيم من الجداول ، والكود سهل جدا: Function Count_Remaining(ID_Emp As Integer, ID_Loan As Integer, T As String) As Currency 'ID_Loan = Loan ID 'S = Sum of payments 'Type = Cridi or Elec 'we need to know how much is the Loan, from tables Cridi and ElectroMeng 'ans SUM the paid, from tbl_Loans If T = "Cridi" Then a = DLookup("[Cridi_Value]", "Cridi", "[ID]=" & ID_Loan) S = DSum("[Payment_Made_Cridi]", "tbl_Loans", "[EmployeeID]=" & ID_Emp) ElseIf T = "Elec" Then a = DLookup("[Elec_Value]", "ElectroMeng", "[ID]=" & ID_Loan) S = DSum("[Payment_Made_Elec]", "tbl_Loans", "[EmployeeID]=" & ID_Emp) End If Count_Remaining = a - Nz(S, 0) End Function هذا شكل الاستعلام: حاليا الاستعلام يجمع جميع مبالغ الموظف التي تم سدادها ، ولم اجربه لعدة قروض او قروض منتهية ، او .... ، فرجاء التجربة وإخباري بالنتيجة. جعفر 11.5.FrmDiscountReport.mdb.zip1 point
-
انا لى راى يا استاذ ahmedabuzena انت حددت عدد فتحات للقاعده بتاعتك طيب لو النور قطع راحت واحده من العدد ولو الجهاز هنج وقفل وفتح القاعده راحت واحده ولو قفل الجهاز وفتحه كذلك راحت واحده لو القاعده اتقفلت واتفتحت بالغلط راحت واحده برضو اعتقد لو تم من خلال التاريخ وتحديد عدد ايام افضل من عدد فتحات للقاعده صح واللا كلامى غلط ؟!1 point
-
الأخ الحبيب أبو يوسف الكود يعمل بالفعل على الجداول كما هي مرفقة بالملف المرفق ولكن يمكن تغيير الكود بشكل يتناسب مع التصميم أو التوسع في الجدول ..حاول تدرس الكود ولو قابلك أي مشكلة أنا تحت أمرك أما فيما يخص الطلب الثاني فأفضل دائماً أن يكون الموضوع الواحد لطلب واحد فقط .. فيرجى طرح طلبك الجديد في موضوع جديد (راجع التوجيهات)1 point
-
فكرة رائعة ...دارة حماية خير من تدمير البرنامج حسب تعبير السائل فلو أن كل منا دمر برنامجاً....النتيجة لا برامج انا معك في ذلك واقول لصاحب السؤال قد يستطيع الموظف عندك تصدير الجداول الى اكسل قبل الحذف الجداول هذا احتمال وقد يكون هناك مشكلة في حاسب الموظف تجعله يستهلك الفرص المتاحة له في يوم واحد1 point
-
السلام عليكم الشكر لله أخى الكريم ، و عليك بمراجعة البيانات فالنتيجة ليست بنسبة 100 % صحيحة و هناك بيانات تحتاج لتصحيح منك لذا عليك بالمراجعة ستجد ان هناك بيانات مكررة و بيانات أرقام مكررة او فى غير مكانها الصحيح هذا عائد لكون البيانات الاساسية غير منتظمة و ناقصة .. العمل فى جملته رائع و وفر وقت كبير للغاية .1 point
-
مرحى بالعتاب با رد عليك ومطلوب منك انك تنتصر للحق الذي تحبه اولا اثراء العناوين افضل من اثراء الفكرة لان العنوان نجده بالبحث ولكن الفكرة تضيع بين الافكار ثانيا نفرض انك سويت مداخلة معي في موضوع ما وطلبت مني حل او تفسير جزئية لا اعرفها او لا تحضرني او تحتاج الى جهد حتى اخرجها بالصورة المناسبة فهنا انت سببت لي حرج ، وان ضربت صفح عن الاجابة فسيتضرر صاحب السؤال ثالثا ما المشكلة في فتح موضوع جديد ما دام يمكننا الاشارة او الاحالة على المواضيع المشابهة قوانين المنتدى انتقيت ووضعت للصالح العام مراعية مصلحة السائل وحق من يتصدى للاجابة1 point
-
السلام عليكم أخي كريمو المرفق الان يعمل على: 1. بعد إضافة القرض في Cridi ، فان القرض يسجل في tbl_Loans ، 2. يمكنك تعديل هذا القرض وتأجيله ، ونتائجه تسجل في tbl_Loans ، 3. بعد إضافة القرض في Elec ، فان القرض يسجل في tbl_Loans ، 4. يمكنك تعديل هذا القرض وتأجيله ، ونتائجه تسجل في tbl_Loans ، 5. يمكن فتح نموذج سداد المبلغ ، والذي سيفتح سجلات القرض المختار. رجاء التجربة ، ثم التجربة ، وتجربة حذف القرض كذلك. الخطوة الاخيرة (هذا الذي اعتقده ) : حساب Remaining على اساس المبالغ المدفوعة. جعفر 11.5.FrmDiscountReport.mdb.zip1 point
-
تفضل هذا المرفق لعلك تجد ماتريد https://docs.google.com/file/d/0B3yVHfWpKqY3WU1saVA4b1F4MW8/edit?usp=docslist_api1 point
-
الأخت الفاضلة سامية أهلا بك في المنتدى ومرحبا بين إخوانك يرجى تغيير اسم الظهور للغة العربية إليك الملف التالي عله يفي بالغرض ... الملف يتعامل بدالة معرفة يمكن من خلالها فصل الاسم بما في ذلك الأسماء المركبة .. Function kh_Names(FullName As String, ParamArray iNdex1()) As String Dim i As Integer Dim kh_Split, MyArray, Ar Dim Kh_String As String, Sn As String, Re As String On Error GoTo Err_Kh_Names '====================================== MyArray = Array("عبد ", "أبو ", "ابو ", "آل " _ , " الله", " الدين", " الإسلام", " الاسلام", " الحق", " النصر", " العهد", " النور", " بالله") '====================================== Sn = Application.WorksheetFunction.Trim(FullName) For Each Ar In MyArray Re = Replace(Ar, " ", "^") Sn = Replace(Sn, Ar, Re) Next '====================================== kh_Split = Split(Sn, " ", , vbTextCompare) On Error Resume Next For i = 0 To UBound(iNdex1) Kh_String = Kh_String & " " & kh_Split(iNdex1(i) - 1) Next On Error GoTo 0 Kh_String = Replace(Trim(Kh_String), "^", " ") kh_Names = Kh_String Exit Function Err_Kh_Names: kh_Names = "" End Function تقبلوا تحياتي Split Compound Names UDF Function.rar1 point
-
وعليكم السلام ورحمة الله وبركاته 01- فكرة الترتيب تتم لجميع القروض ويكتب 0.00 في الجدول tbl_Loans للأشهر المعفاة لا ليس لجميع القروض ، وإنما للقرض الذي الذي تم اختياره (السجل الذي تكون عليه في Cridi وتضغط على زر اعادة تقسيم الاقتطاع). بعدما وجدت صعوبة في قرض2 الى قرض 4 ما هي هذه الصعوبة ، رجاء اعطني تفاصيل دقيقة بأمثلة لوسمحت ، لأني اخبرتك: فكل شئ يعتمد على هذا النموذج. 02- مالغاية من أنشاء نموذج فرعي FrmCridi_sub_OLD انا عندما اغير شئ في برنامج ، دائما احتفظ بالاصل ، واطلق عليها OLD ، حتى اعرفه ، ويمكن في النهاية حذفه. 03 - الإستعلام qry_Loans ينقصة الباقي الشهري وهذا هو " لب المطلب " الذي تطرقنا له منذ البداية المسألة سهلة ولكننا لم نصل اليها: 1. عند دفع كل شهر ، فسنكتب في خانة Payment_Made في النموذجfrm_Loans ، القيمة المدفوعة لذلك الشهر (وهذا ينطبق على الموظف الذي يريد ان يدفع اي مبلغ يحب في ذلك الشهر) ، 2. عندها ، كل الذي يجب عمله هو جمع حقل Cridi وحقل Payment_Made في الاستعلام qry_Loans ، ونطرحهم من بعض لنحصل على الباقي الشهري Remaining . 04- النموذج الفرعي FrmCridi_sub2 الدي هو دمج بين Cridi و Elec عند فتحة لا نلاحظ شيئا به بالرغم أني سجلت معلومات ب Elec انا صغرت الحقول لكي يتسع المكان لبقية حقول ElectroM الاضافية ، ولكني لم اصل اليها. (ولكني ضبطته بحيث تستطيع استبداله مكان FrmCridi_Sub ، وسيعمل بالطريقة الصحيحة) ، ولكن ، قد نلغي فكرة دمج النموذجين ، فعندها تستطيع ان تنسخ الكود من النموذج Cridi الى النموذج ElectroM لعمل الازم. 05- زر سداد المبلغ بنموذج Cridi لا يعمل هذا الزر يجب ان يفتح النموذج frm_Loans للقرض/السجل الذي تكون عليه في Cridi ، وانت بعد ذلك تدخل مبلغ السداد للشهر المطلوب (لاحظ 03.1 و 03.2 اعلاه لمعرفة طريقة الحساب). 06- عند تجربة قرض ومن بعد يتم حذفه نلاحظ انه يحدف من الجدول Cridi ولا يحذف من الجدول tbl_Loans اعمل علاقة بين الجدول Cridi والجدول tbl_Loans كما في الصورة المرفقة: آمل ان توفق في إنشاء كود للباقي "Remaining" في الإستعلام qry_Loans رجاء مراجعة 03.1 اعلاه أخي كريمو انت الآن تستطيع ان تملئ الفاراغات التي انا لم اكملها ، فالموضوع الآن اصبح واضحا لطريقة عمل الجدول tbl_Loans ، نعم قد نحتاج حقل خاص لـ Payment_Made_Cridi و Payment_Made_Elec ، ولكن سنعرف هذا الشئ لما نوصل الى Elec ، والذي انت تستطيع ان تعمله ، بواسطة نفس الكود الموجود في Cridi. رجاء ملاحظت اني في اي للتاريخ ، فاني أغير اليوم واجعله" اول الشهر" (لهذا السبب كنت تحصل على خطأ في الكود في النموذج frm_Avoid سابقا). جعفر1 point
-
الله يبارك فيك وبعمرك وعملك وإنه لشرف كبير لي أن أكون بينكم في هذا الصرح المبارك الذي لم أحلم يوما أن أجد من العباقرة العرب وفي المستوى الذي أراه هنا وكم أنا سعيد لوجودي هنا وأرجو من الله أم يوفقني لما فيه الخير بأن أنهل من علمكم وأن أقدم لغيري ان استطعت الى ذلك سبيلا بين أيديكم اشكرك على مرورك الكريم1 point
-
أخى الحبيب " محمد نصرى " شرف لى أخى توارد أفكارنا ، من ناحية والرغبة فى الأضافة والتميز من ناحية أخرى وأنا عندما أضع معادلة فلم تعد ملكا لى ولكن ملكا لهذا الصرح ومستخدمها فلايمكن الأدعاء بتشابة معادلة ، أو ملكيتها فأنا أنظر وأتابع لكل عمل فى هذا الصرح رغبة منى : 1- فى التعلم 2- رغبة فى الحصول على فكرة 3- رغبة فى خدمة الغير طالما هناك المقدرة لذلك فأرجو فعلا أن تضيف لها وخاصا أنها واقفة على " 7" معاملات للدالة " SUBSTITUTE "ولو حضرتك أستطعت إضافة لها مزيدا من الشروط تكون أنجزت لى ولكافة الزملاء المتكلمين بالعربية ومستخدمى الأسماء المركبة وهذه كانت النقطة التى طلبها ، أستاذى " سعيد بيرم " ، وعجزت نظرا لأن معاملات دالة ال " SUBSTITUTE " قد وصلت أقصاها وهنا نقوم بحذف شرط وأضافة أخر حسب المطلوب لتحقيق الطلب ولكن أنا عملت كود يستطيع فصل " كافة الأسماء المركبة " مهما كان طولها ولكن هذا لم يشبع غرورى ، لأن إمكانية الكود لعمل ذلك ليست غريبة ولا صعبة ، وأنا أريد المعادلة تقوم بذلك وهناك عباقرة الكود والمنتدى ملئ بهم أمثال عبقرى الوطن العربى " عبد الله بقشير " وقد سبقنا جميع فى هذا بمعادلتة المعرفة التى مازالت وستظل تستخدم لجميع مستخدم الأكسيل فى الوطن العربى كله لتقسم الأسم وقمت بعمل ذلك فعلا بالدوال ، ولم يكن هناك غير الأسم المركب ففكرت فى هذه المعادلة ولكن عجزت أيضا لأن لها مدى ، وأن كانت عمليةلتحقيقها فصل العديد من الأسماء مهما كان طولها فأتمنى لك أخى الحبيب التوفيق والتميز ، فهذا يشرفنى ويثلج صدرى تقبل تحيات أخيك1 point
-
أخ كريم من عرق كريم حفيد صلاح الدين الأيوبى أعزك الله لا عليك كلنا هذا الرجل .. ارجو من الأخوة الأساتذة ان يروا الموضوع ليقدموا ما يستطيعون ان شاء الله .. سلامى للأكراد كردى كردى و سلام خاص لسرمد الكردى من اعز اصدقائى الأكراد .. دمت بخير و أعزك الله .1 point
-
اخي سعيد من يقوم بأرسال الايميل الخاص بالنشرة هو الاستاذ محمد طاهر وليس انا1 point
-
السلام عليكم برنامج الWord هناك خط يسمى DecoType Naskh وهذا الخط يشبه خط المصحف .. وهناك خط يسمى Quran ولكنه أيضا نفس شكل الخط السابق .. ويفضل كتابة الأيات عن طريق نسخها من أحد البرامج التى تبحث عن الكلمات بالمصحف حيث انها تنسخها بالتشكيل ..1 point