اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    404

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

  1. السلام عليكم أخي نبيل في الواقع انا اتابع هذا الموضوع ولكن بعد اذنك ، عندي هذه الملاحظة: اعتقد بأنك تريد هذا البرنامج يشتغل لك ، لأنك احببت طريقة انتقال المواد من نموذج الى نموذج آخر ، ولكن لاحظت في المشاركات الاخيرة انك تريد برنامج مبيعات ، والذي فيه كميات الدخول والبيع والإلغاء ووووو ، فما ممكن ان تجعل هذا البرنامج للمبيعات بالطريقة التي هو عليه ، لأنه غير معمول لهذا الشئ!! نصيحتي ان تعمل برنامج مبيعات (او ابحث في المنتدى لأحد البرامج الجاهزة والتي عمل عليها الشباب ، وانا متأكد انها كثيرة ، ونعم ستحتاج الى تغيير لتناسب طريقتك) ، ثم وبكل بساطة نستطيع ان نعمل تحويل السجلات بين النماذج جعفر
  2. القوائم في الطريقة الاولى ما راح تختفي ، ولكن لن يستطيع تغيير البيانات عن طريقها. بس في الطريقة الثانية ما يقدر يعمل بيها شئ ، جرب ، انت ما خسران عادة ، لا نخلط بين هذه النماذج ، فيكون عندك النموذج الرئيسي للبرنامج ، ويكون فيه زر فتح نموذج للقراءة ، وزر لإدخال البيانات لنفس النموذج ، وزر ثالث لتعديل البيانات ، طبعا هذه النماذج الثلاثة هي اصلا نموذج واحد ، ولكن تفتح كل نموذج حسب الطريقة التي ذكرتها لك في في الكود اما انك تكون في نموذج القراءة ، ثم تريد تضغط زر فيه علشان تعدل البيانات ، فالكود: Me.AllowEdits = True Me.AllowDeletions = True جعفر
  3. آه فهمت الآن عندما تريد ان تفتح نموذج للقراءة فقط ، ولا تريد احد ان يستطيع تغيير البيانات ، ولا حتى من القائمة ، افتح النموذج هكذا: docmd.OpenForm "Form_Name",acDesign,,,acFormReadOnly لاحظ الجملة الاخيرة ، هي التي تجعل النموذج للقراءة فقط (acFormReadOnly) اما اذا اردت ان تقفل حقل معين ، فاكتب الكود التالي على حدث تحميل النموذج: me.Field_Name.enabled=false جعفر
  4. ما فهمت ، وضاعت علينا ساعة الى الان ياريت تعطيني شرح مفصل ، فانا لم ارى برنامجك ، ولا اعرف شئ عنه إلا الذي تشرحه انا حتى زوجتي ما تدلعني بهالاسم بس لأنك دلعتني ، أأمر وتدلل جعفر
  5. هلا احوي ابونادر ما قصدك بـ " تختفي علامة القوائم المنسدلة " ، يعني القائمة اللي تطلع لما تضغط بالزر اليمين؟ جعفر
  6. وعليكم السلام السبب ظاهرا ، ان الاسطر الاطول ، اضافت vbcrlf او vblf (يعني انتقل للسطر التالي) في نهاية كل سطر العلاج ، احد اهم طرق العلاج ، هو معرفة السبب ، والذي هو في برنامجك ، ومثل ما قال اخي ابوعبدالله ، محتاجين نشوف برنامجك بينما ، اذا تركنا كل شئ كما هو ، واحنا نعرف اسم ومسار الملف ، فممكن نضع الكود التالي ، بعد عملية تصدير txt (طبعا لازم تغير اسماء الملفات ومسارهم) : Private Sub cmd_Clean_Click() File_From = Application.CurrentProject.Path & "\377.txt" File_To = Application.CurrentProject.Path & "\377_2.txt" Dim TextLine Open File_From For Input As #1 'open file for input Open File_To For Output As #2 'open file for output Do While Not EOF(1) 'Loop until end of file. Line Input #1, TextLine 'Read a line into variable. If Len(TextLine) > 5 Then 'if the line is NOT empty, write it to File_To Print #2, TextLine End If Loop Close #1 'Close file. Close #2 End Sub ومثل ما قال ابوعبدالله: (ويادار ما دخلك شر) جعفر
  7. موجود في الكود غيّر المسار في السطر الاول ، واحذف السطر الثاني: 'File_Path="C:\Temp" File_Path = Application.CurrentProject.Path & "\" جعفر
  8. تفضل هذا الكود: Private Sub رقم_الحافظه_DblClick(Cancel As Integer) 'File_Path="C:\Temp" File_Path = Application.CurrentProject.Path & "\" File_Name = Me.رقم_الحافظه & ".pdf" Name_Path = File_Path & File_Name If Dir(Name_Path) <> "" Then Application.FollowHyperlink Name_Path Else MsgBox "File not found." End If End Sub جعفر New Microsoft Office Access Application.zip
  9. تفضل حقل الرتبة ، وبدون رؤساء الورش: . جعفر 374.8A13.accdb.zip
  10. اذا بتتوقف عن الاسئلة ، سنطلب من المنتدى ان يُغلق ، فالله يخليك واصل اسئلتك ضع هذا الكود في الحدث الحالي للنموذج الرئيسي: Private Sub Form_Current() If Me.[مصروف Query subform].Form.RecordsetClone.RecordCount = Then MsgBox "No Records" End If End Sub للعلم ، الكود فيه صفر ، ولكنه لسبب ما ، لا يظهر: RecordCount =0 Then جعفر
  11. وعليكم السلام هذه الرسالة لا علاقة لها بالرجوع الى الوراء ، وانما لها علاقة بتصغير/اخفاء الاكسس لهذا السبب ، لن نتمكن من معرفة المشكلة بدون فحص البرنامج جعفر
  12. وعليكم السلام نعم ممكن ، تطبع التقرير بالصيغة اللي تراها مناسبة ، pdf او Excel او Rtf ، وتحفظها على الكمبيوتر ، ويمكنك ارفاق هذا/هذه الملفات بالايميل بعدة طرق ، والرابط هذا فيه طريقتين ، Gmail و Hotmail: جعفر
  13. نعم بتسألني كيف ، بقول لك يعتمد على الشروط اللي تريدها لكل حقل ، بتقول لي عطني مثال ، بقول المثال لازم يكون من واقع برنامجك ، فلازم ترفق برنامجك وتشرح بالضبط اللي تريده جعفر
  14. السلام عليكم نعم ممكن ، ويمكنك ارسال الايميل بعدة طرق ، والرابط هذا فيه طريقتين: ولكن ، رجاء افتح موضوع جديد بهذا الخصوص جعفر
  15. كده الموضوع اصبح جامد أوي واشمل بكثير من المتوقع جعفر
  16. تفضل هذا النموذج ، بزر استيراد بيانات اول صفحة ، وزر حفظ البيانات في الاكسل: والكود (لاحظ اسم ومسار ملف الاكسل ، في الحدثين): Option Compare Database Dim ExcelApp As Object 'Excel.Application Dim WkBk As Object 'Excel.Workbook Private Sub cmd_Import_From_Excel_Click() File_Path = Application.CurrentProject.Path & "\372.62293-SER OH.xls" Set ExcelApp = CreateObject("Excel.Application") Set WkBk = ExcelApp.Workbooks.Open(FileName:=File_Path) 'With WkBk.Sheets("input data") With WkBk.Sheets(1) Me.Control_No = .Range("B2").Value Me.SN = .Range("B3").Value Me.DATE = .Range("B4").Value Me.TS_Name = .Range("B5").Value Me.Component_PN = .Range("B7").Value Me.Description = .Range("B8").Value Me.JIC_NO = .Range("B10").Value Me.JIC_Rev_NO = .Range("B11").Value Me.JIC_Rev_Date = .Range("B12").Value Me.CMM_JIC_Approval = .Range("B13").Value Me.CMM = .Range("B14").Value End With If Not (ExcelApp Is Nothing) Then ExcelApp.Quit Set WkBk = Nothing Set ExcelApp = Nothing End Sub Private Sub cmd_Save_to_Excel_Click() File_Path = Application.CurrentProject.Path & "\372.62293-SER OH.xls" Set ExcelApp = CreateObject("Excel.Application") Set WkBk = ExcelApp.Workbooks.Open(File_Path) ExcelApp.Application.Visible = False 'True 'With WkBk.Sheets("input data") With WkBk.Sheets(1) 'WkBk.Sheets(1).Range("B2").Value = Me.Control_No .Range("B2").Value = Me.Control_No .Range("B3").Value = Me.SN .Range("B4").Value = Me.DATE .Range("B5").Value = Me.TS_Name .Range("B7").Value = Me.Component_PN .Range("B8").Value = Me.Description .Range("B10").Value = Me.JIC_NO .Range("B11").Value = Me.JIC_Rev_NO .Range("B12").Value = Me.JIC_Rev_Date .Range("B13").Value = Me.CMM_JIC_Approval .Range("B14").Value = Me.CMM End With WkBk.Save WkBk.Close Set WkBk = Nothing Set ExcelApp = Nothing MsgBox "Done" End Sub 372.Database1.mdb.zip جعفر
  17. نعم يمكن ، ولكن بطريقة غير مضمنه ، يعني نقرأ البيانات بزر ، ونحفظ البيانات بزر بس السؤال هو ، لماذا تريد ان تغير البيانات من الاكسس ؟ جعفر
  18. تفضل ، انا اقصد هذه الطريقة ونعم يمكن العمل بطريقتك ، وهي ستكون اسهل ، ولكن ، انت تعمل السجل ، وقد تكون بياناته ليست لجميع الموظفين ، لكنك تدفع ثمن هذا السجل بكثرة حقوله ، كما انه كلما زاد عندك المستخدمين ، اضطررت ان تغير الجدول وتضيف مستخدم جديد ، وهذا غير عملي ولا تحتاج الى نموذج لطباعة التقرير جعفر 370.Database21.accdb.zip
  19. وعليكم السلام اذا تتبعت خطوات البرنامج في الرابط التالي ، فستعرف كيف تتحكم في الاكسل ، وستحقق المراد جعفر
  20. اعطني دقائق وارد عليك ان شاء الله
  21. اعتقد بأنك يجب ان تعطي المستخدم اكثر من سبب لإستحدام هذا النموذج ، ومنها اقتراحاته لتحسين البرنامج ، اقتراحات لإضافات معينة ، شكوى عن عدم اشتغال شئ معين ، اخرى ، ... وهكذا ، بس اعمل هذه الاقتراحات بشكل مربع سرد ، لكي يختار ويرسل جعفر
  22. عفوا ، هذا يُعتبر تدخل في اصل فكرة البرنامج ، والعقل المدبر للبرنامج يقدر يجيب عن هذا السؤال جعفر
  23. أخي عبدالله شرح الطريقة ، لكني اود ان اضيف معلومات بين سطوره 1. تستطيع ان تربط الجداول من البرامج الاخرى الى برنامجك ، وبدون استيراد البيانات ، 2. اذا كان استيراد الجداول ضروريا ، فيمكن عمل ذلك ايضا ، وبعدها: يا نعمل استعلام للنماذج/التقارير مباشرة من هذه الجداول اذا امكن ، او نعمل جدول مؤقت ، نستخلص البيانات من الجداول الاخرى اليه ، سواء عن طريق استعلامات او كود ، وبعده نعمل من هذا الجدول المؤقت استعلام للنماذج/التقارير جعفر
×
×
  • اضف...

Important Information