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

jjafferr

أوفيسنا
  • Posts

    9915
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    404

كل منشورات العضو jjafferr

  1. وعليكم السلام الله يطول في عمرك وتكون دوم سالم تو انت الله هداك كتبت المعادلات كلها ، قاصر تدخل اسماءها في الكود وخلص الموضوع وين المشكلة؟ جعفر
  2. وعليكم السلام هذا ممكن عن طريق التوقيت في النموذج ، ولكنه غير عملي (بالنسبة لي طبعا) ، لكن السؤال ، ليش تريد عمل هذا الشئ؟ لأن ممكن تحصل على اللي تريده بطريقه ثانيه/افضل جعفر
  3. ول ول ول ، هالكثر الموضوع معقد رحم الله والديك أخوي رمهان ، رفعت الرايه عنا كلنا جعفر
  4. وعليكم السلام اما انا فأضع تنسيق الحقل في الجدول ، وعلى اساسه يتنظم في النموذج والاستعلام والتقرير جعفر
  5. وعليكم السلام انا عملت مربع النص ، وطريقة جلب اسم الملف ، فقط لتسهيل العمل ، انا افهم من سؤالك بأنك تريد ان توضع اسم ومسار الملف في الكود مباشرة (وإلا كيف نعرف اي ملف نشتغل علي!!) هذا هو الكود للطباعة: Private Sub cmdPrintLandscape_Click() Dim objWord As Object Set objWord = CreateObject("Word.Application") objWord.Documents.Open ("C:\Temp\abc.doc") objWord.Visible = False 'True '<== ** Look at the code below objWord.PrintOut ' wait for the printout to finish, then close Word Do While objWord.BackgroundPrintingStatus > 0 'pause 5 seconds untill the document is printed PauseTime = 5 ' Set duration. Start = Timer ' Set start time. Do While Timer < Start + PauseTime DoEvents ' Yield to other processes. Loop Loop objWord.Documents.Close Save = False objWord.Quit Set objWord = Nothing End Sub وتشغيل برنامج exe Private Sub cmd_run_Click() On Error Resume Next Shell "C:\windows\Notepad.exe", 1 End Sub جعفر
  6. شكرا لك على هذه الاجابات بعد حوالي ساعة من الان ابدأ العمل إن شاء الله الفكرة هي: نبني جدول جديد اسمه tbl_Loans ، هذا الجدول نسجل فيه القروض ، بكل انواعها ، بحيث عند عمل القرض في النموذج Cridi (او اي نوع آخر من القروض) ، فتلقائيا يعمل 10 سجلات (يعتمد على نوع القرض) ، ولما يسدد قرض الشهر ، فقيمة التسديد تظهر في حقل المبلغ المدفوع (وهنا ميزة اخرى لهذا الحقل ، وهو اذا شاء الموظف ان يسدد اي مبلغ آخر ، فندخله المبلغ هنا) ، وبالنسبة لأشهر الاعفاء ، فسيكون سجل اسم الشهر موجودا ، ولكن بدون مبلغ الاقتطاع الشهري ، مع وجود ملاحظة بان الشهر معفي ، وعلى هذا الاساس ، فحساب المبالغ المطلوب اقتطاعها ، ستكون من هذا الجدول ، وحساب المبالغ المتبقية وووو ، طبعا هذا التغيير ، سيجعلك تغير في بعض النماذج الاخرى ، لقراءة المبالغ الحقيقة (وحسابها في اي وقت شئت) وليست مبالغ إفتراضية فهل نتوكل على الله بالعمل علي هذه الطريقة؟ جعفر
  7. بالعكس ، العائلة بتكون مجتمعة مع بعض بالطريقه هاي واعتذاري لك ، ولأبومحمد ، لأني ما انزلت مرفقكم ، فما اعرف اللي فيه جعفر
  8. السلام عليكم اخي كريمو سؤال لوسمحت: هل البرنامج يقوم بعمل آخر غير عملية السلف؟ جعفر
  9. أختي هذا مثال لطريقة العمل ، لنفس الغرض الذي تريديه ، ما لك شغل في بقية البرنامج ، خذي حاجتك منه جعفر
  10. وعليكم السلام هذا مثال: http://www.officena.net/ib/index.php?showtopic=59606&p=382425 جعفر
  11. وعليكم السلام ورحمة الله وبركاته حيا الله من سألنا سؤال غير عن كل يوم الاكسس لا يفرق بين الحروف الكبيرة UpperCase/Ucase و LowerCase/LCase ، فلهذا السبب يجب ان نحل المسألة بطريقة اخرى. هناك أكثر من طريقة لعمل المطلوب: 1. قراءة رقم كل حرف (انا احتفظ بالصورة الاولى ascii table في الرابط التالي ، وهي جدا مفيدة للمبرمج): http://www.asciitable.com/ من الجدول ، قيمة A = 65 ، بينما قيمة a = 97 جرب هذا الكود: msgbox asc("A") msgbox asc("a") ففي هذه الحالة ، يجب ان نقارن قيم الاحرف بين القيمة في النموذج والتي في الجدول ومادمنا في سياق ascii table ، فترى اننا في بعض الاوقات في الكود ، عندما نريد استخدام الرمز " وقد يكون من الصعب استخدامه مباشرة ، فاننا نستخدم (chr(34 2. طريقة نستخدم الامر StrComp وهو يقوم بمقارنة جملتين ، ولكن علينا التاكد باننا نقارن vbBinaryCompare ، مثل: Comp_User = StrComp(rst!username, Me.username, vbBinaryCompare) فاذا كانت النتيجة تساوي صفر ، فمعناه ان الجملتين متشابهتين هذا كود برنامجك للمقارنة: Private Sub login_Click() If trycount > 2 Then MsgBox " من حُسن إسلام المرء تركه ما لا يعنيه ", vbOKOnly + vbMsgBoxRight + vbInformation, "تحذير " MsgBox " سيتم إغلاق البرنامج الآن ،،، يجب مراجعة المسؤول ", vbOKOnly + vbMsgBoxRight + vbInformation, "تحذير !" DoCmd.Quit End If Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From users") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 1 To RC If rst!depart = 1 Then Comp_User = StrComp(rst!username, Me.username, vbBinaryCompare) Comp_Pass = StrComp(rst!txtpassword, Me.txtpassword, vbBinaryCompare) If Comp_User = 0 And Comp_Pass = 0 Then MsgBox "مرحباً بك " & Me.username DoCmd.OpenForm "ادارة الجوازات", acNormal DoCmd.SelectObject acForm, "login2" Me.Visible = False Exit Sub End If End If rst.MoveNext Next i MsgBox "تاكد من صحة اسم المستخدم وكلمة المرور" trycount = trycount + 1 End Sub وانا عملت المقارنة للحقلين username و txtpassword جعفر 59.اظهار كلمة المرور.accdb.zip
  12. وعليكم السلام أخي علي للأسف سؤالك غير واضح رجاء تعمل اكثر من مثال في الاكسل او الوورد (مثلا الرقم التعريفي 107 ، فيه رقمين ، كيف تريدنا نتعامل معاهم) ، ورجاء اعطاء ادق التفاصيل ، حتى نعرف المطلوب بالضبط جعفر
  13. وعليكم السلام علشان تحصل على: انت محتاج الى استعلام تحديث : والاستعلام: UPDATE Families SET Families.FileNumber = Left([FileNumber],1) & "0" & Right([FileNumber],3); والاستعلام فيه "0" ، ويعني صفر واحد ، تقدر تزيد الاصفار مثل ما تريد ، مثل "00000" جعفر
  14. وعليكم السلام شوف كيف عملناه في برنامجنا السابق: http://www.officena.net/ib/index.php?s=9665ba43203e1be265350f9ce98f3c97&showtopic=60710 لكل حقل if خاص بيها جعفر
  15. الطريقة اللي انا استعملها هي: في اول نموذج يفتح في برنامجك ، في النموذج1 ، في الحدث عند التحميل ، نحط الكود التالي: docmd.maximize وجميع النماذج ما تكون منبثقة ، واستخدام هذه الطريقة: http://www.officena.net/ib/index.php?showtopic=60864&p=391815 تكون النتيجة مثل ما طلبتي جعفر 56.قاعدة بيانات1.accdb.zip
  16. تفضلي 56.قاعدة بيانات1.accdb.zip
  17. كما توقعت ، النموذج لم يُغلق ، فعليه ، القيمة السابقه لا تزال موجودة!! غيري الكود الموجود عندك ، بهذا الكود: نموذج1 Private Sub أمر0_Click() DoCmd.OpenForm "استعلام1", acNormal 'Me.Visible = False End Sub ولنموذج الاخر ، استعلام1: Private Sub أمر6_Click() 'DoCmd.OpenForm "نموذج1", acNormal 'Me.Visible = False DoCmd.Close End Sub جعفر
  18. السلام عليكم جربت الكود ، وكله تمام (في الكود وما جربت الارقام) بس علشان الفقرة الاخيرة مال 203 ، أضفت السطر الاخير في الكود: Private Sub Command6_Click() NA = Sallary * 0.04 * Years If NA > Sallary * 0.5 Then NA = Sallary * 0.04 * Years Else NA = Sallary * 0.5 End If If NA > Sallary * 0.8 Then NA = Sallary * 0.8 End If If NA < 203 Then NA = 203 End Sub جعفر
  19. أفضل شئ ممكن تعمليه ، انك ترفقين هذا الجزء من البرنامج: 1. الاستعلام 2. النموذج 3. سجلين او 3 في الجدول وعليه نشوف وين المشكلة جعفر
  20. وعليكم السلام أختي عند الاستعلام مرة ثانية ، هل النموذج الاول مقفل؟ رجاء ان تعطينا تفصيل أكثر ، حيث بدون البرنامج ، يجب ان نعرف تفاصيل أكثر جعفر
  21. السلام عليكم ورحمة الله وبركاته رحم الله والديك أخي أبومحمد على العمل الجميل ، تسلم ايدك اذا تسمحوا لي بالمشاركة ايش رايكم بهذا النموذج: بتعديل بسيط على الكود السابق اللي اشتغلتوا عليه ، المادة رقم 1 ، تمسح جميع افرع الشجرة ، حتى يبدأ الكود بعمل الازم: وهاي علشان نخلي الشجرة تُعرض من اليمين الى اليسار: بالاضافة الى هذه الوحدة النمطية: Option Compare Database Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Public Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, lpRect As Long, ByVal bErase As Long) As Long Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long Public Const GW_CHILD = 5 Public Const WS_EX_LAYOUTRTL = &H400000 Public Const GWL_EXSTYLE = (-20) ' ' From http://www.microsoft.com/middleeast/msdn/faq.aspx ' 'Place OnLoad of the Form ' Dim OldLong As Long 'For Form ' OldLong = GetWindowLong(Me.hwnd, GWL_EXSTYLE) ' SetWindowLong Me.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For List ' OldLong = GetWindowLong(List1.hwnd, GWL_EXSTYLE) ' SetWindowLong List1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For The StatusBar ' OldLong = GetWindowLong(StatusBar1.hwnd, GWL_EXSTYLE) ' SetWindowLong StatusBar1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For TreeView ' Dim nodX As Node ' Set nodX = TreeView1.Nodes.Add(, , "R", "Root") ' Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C1", "Child 1") ' Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C2", "Child 2") ' Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C3", "Child 3") ' Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C4", "Child 4") ' nodX.EnsureVisible ' OldLong = GetWindowLong(TreeView1.hwnd, GWL_EXSTYLE) ' SetWindowLong TreeView1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For ListView ' OldLong = GetWindowLong(ListView1.hwnd, GWL_EXSTYLE) ' SetWindowLong ListView1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For ProgressBar ' ProgressBar1.Value = 50 ' OldLong = GetWindowLong(ProgressBar1.hwnd, GWL_EXSTYLE) ' SetWindowLong ProgressBar1.hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False 'For ToolBar ' mhwnd = GetWindow(Toolbar1.hwnd, GW_CHILD) ' OldLong = GetWindowLong(mhwnd, GWL_EXSTYLE) ' SetWindowLong mhwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL ' InvalidateRect hwnd, 0, False جعفر 54.TreeView_RTL.accdb.zip
  22. كلامك صحيح :-) هذه تسمى نسخة الموبايل ، و في اسفل الصفحة زر اسمه "النسخة الكاملة" حيث تستطيع ان ترى نفس النسخة التي على الكمبيوتر :-) جعفر
  23. وعليكم السلام :-) 1. البرنامج يأخذ جميع الحقول في الجداول او الاستعلامات ، فحذف الاستعلامات لن يزيد في أي شئ :-) 2. البرنامج يأخذ المسميات التوضيحية لكل حقل ويعرض هذا المسمى لاعمدة التقارير ، فإذا لم توجد هذه المسميات ، يستخدم اسم الحقل. 3. وأخيرا ، صحيح أن النموذج يأخذ أسماء الحقول من اليسار إلى اليمين ، لكن التقارير هي من اليمين إلى اليسار ، والعمود الأول الأقصى على اليمين هو الرقم التسلسلي لكل سجل :-) جرب ، وأخبرني عن ملاحظاتك :-) جعفر
  24. السلام عليكم أخي كريمو رجاء اعطني الخطوات التي تتبعها لعمل قرض ، فالنفرض لجعفر ، قرض Cridi و Electro.... و others شكرا جعفر
  25. كأنّ حد جاب طاري إسمي اي ابوي ، انت الحين صرت غير عنّا إحنا المساكين ، صرت فوق السحاب تشم النسيم العليل ، بس إحنا صامدين مع النخل تستاهلون أخوي رمهان ، وأخوي أبا عمر ، واللي كتبوه عنكم ترى قليل ، بس ذاقوا القشرة ، وما وصلوا للب جعفر
×
×
  • اضف...

Important Information