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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    415

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

  1. لا ، فقط الملفات بصيغة bmp 🙂 ويمكنك تحويل اي من ملفات الصور الى صيغة bmp ، سواء عن طريق برامج الصور او مواقع الانترنت 🙂 جعفر
  2. جمل تعريف المتغيرات Dim او Private او Public او Global او Static تحفظ جزء من الذاكرة لهذا المتغير ، وهي تخبر البرنامج عن نوع المتغير (نص او رقم او تاريخ او .. ) ، ولكن الافضل ان تستعمل Dim بـ : Option Compare Database Option Explicit dim int_B as integer Private Sub cmd_frm_m1_Click() Dim str_A as string بهذه الطريقة ، الاكسس يساعدك ويخبرك عن مكان الخطأ في المتغير ، قبل بدء تشغيل البرنامج ، اذا استعملت ويكون البرنامج اسرع في العمل 🙂 جعفر
  3. وكما قال اخوي ابوخليل ، الموضوع يخص ماكرو الامان ، وهنا تفصيل للموضوع: جعفر
  4. التجربة لن تكلفك ، إلا تنزيل الملف ذو 1x1 بكسل ، ثم اعطائه نفس اسم قاعدة البيانات ، ثم تشغيل البرنامج وملاحظة وجود صورة الاكسس من عدمها 🙂 جعفر
  5. شكرا جزيلا يا باشا 🙂 جعفر
  6. وعليكم السلام 🙂 حسب علمي كمبرمج (والمحاسب سيعطي اجابة ادق🙂) ، يكون فيه جدول لقيمة المواد ، وكلما جبت بضاعة جديدة ، يتم اضافتها لهذا الجدول ، وقت البيع ، وهنا تختلف طرق الحساب: 1. تقدر تأخذ آخر قيمة للمادة ، دائما ، وتستعملها في كسعر المادة للبيع ، 2. تقدر تأخذ معدل قيمة المادة ، وهذه القيمة لها علاقة بكمية المادة التي بيعها بالفعل ، والكمية الجديدة ، وهنا قد تأخذ معدل القيمة من جدول القيم فقط ، او تأخذ المعدل بإستخدام المواد ايضا 🙂 ولكن في جميع الاحوال ، القيم القديمة تظل كما هي ، وبدون عمل اي تغيير عليها 🙂 جعفر
  7. وعليكم السلام اخوي حسين 🙂 شكرا جزيلا على هذه الطريقة 🙂 هناك طريقة اخرى سهلة وقد تكون اكثر فائدة: على افتراض ان اسم البرنامج myDB.mdb : 1. عمل صورة بحجم 1x1 بكسل (مرفق نسخة) ، وتسميتها بنفس اسم البرنامج ولكن بصيغة bmp هكذا : myDB.bmp ، ووضعها في نفس مجلد الملف myDB.mdb ، بهذه الطريقة لن تشاهد اي شيء الى ان يفتح البرنامج (إلا اذا كنت شديد الملاحظة ورأيت الصورة بهذا الحجم 🙂 ) . 2. عمل صورة فيها اسم الشركة وشعارها وارقامها ، واسم البرنامج ، بالحجم المناسب ، وتسميتها بنفس اسم البرنامج ولكن بصيغة bmp هكذا : myDB.bmp ، ووضعها في نفس مجلد الملف myDB.mdb ، بهذه الطريقة يفتح البرنامج بهذه الصورة (ويفرح المدير 🙂) بدلا عن شاشة الاكسس Splash screen 🙂 . جعفر 1x1_For_Hiding_Splash_Screen.bmp
  8. ياريت تخبرنا وين كانت المشكلة 🙂 جعفر
  9. الطريقة الصحيحة في قاعدة البيانات ان: تضيف حقل للسنة ، ولنسميه iYear ، عادة يكون هناك نموذج رئيسي دائما مفتوح ولنسميه frm_Main مثلا ، قم بعمل مربع تحرير Combobox للسنوات الموجودة في حقل السنه ، وعند فتح النموذج ، اجعل القيمة التلقائية التي يأخذها هذا المربع : me.iYear.value= year(Date) . وتكون نماذجك مصدر بياناتها استعلامات ، وفي الاستعلام في حقل السنه ، اجعل المعيار: Forms!frm_Main!iYear . بهذه الطريقة يمكنك الاحتفاظ ببيانات جميع السنوات السابقة ، ولن يحصل اي خلط بين بيانات السنين 🙂 كيف عرفت انا هذه الطريقة ؟ لأني طبقتها على برامج المخازن والمحاسبة للعديد والعديد من المؤسسات ، والطريقة ناجحة وبإمتياز 🙂 جعفر
  10. شكرا جزيلا اخوي ابوالحسن 🙂 جعفر
  11. رجاء تعطينا فكرة عن العملية ، فانا ما فهمت 😞 جعفر
  12. بل طبقته على تقرير ، لاحظ اسم التقرير : . . كلما في الامر اني حفظت النموذج بضيغة تقرير ، فانا وضحت لك في مشاركتي السابقة ، واليك توضيح آخر: الاكسس فيه خاصية تحويل كائن النموذج الى كائن تقرير ، يعني اذا كان عندك نموذج ، واردت ان تعمل تقرير شبيه له ، فيمكنك تحويل النموذج الى تقرير ، والتعديل عليه وحذف الكود والازرار التي به ، هكذ : . اذا وضعت مؤشر الفأرة على كلمة acOutputReport في الكود ، ثم ضغطت على زر F1 ، فسترى البدائل الاخرى التي يمكنك تصديرها ، فقط تأكد بمطابقة نوع الكائن الذي تريد تصديره (مثلا acOutputForm) ، بوضع اسمه الصحيح (fform) : . جعفر
  13. وعليكم السلام اخي احمد 🙂 شكرا لك على جميل كلماتك ، وان شاء الله يتقبل الله منا هذا القليل 🙂 جعفر
  14. الكود صح 100% حسب شرحك 🙂 ما عدا المسافة الزائدة هنا : . 1. رجاء عرض رسالة الخطأ والسطر الذي به الخطأ ، 2. التأكد من نوع الحقول في الجدول ، 3. الحقلين : Forms!Fatora_be!Fat_num و Forms!Fatora_be!Kind_haraka يجب ان يكونوا : أ. اسماء الحقول في النموذج وليس ب. مصدر الحقول . جعفر
  15. وعليكم السلام 🙂 تفضل : بدل هذا السطر 'curPath = DTPath & "\salah- " & Format(Date, "dd-mm-yyyy") & ".xlsx" استعمل هذا curPath = DTPath & "\" & Me.ChooseTble & ".xlsx" وكذلك تم تغيير مكان هذه الاسطر في الكود ، ليصبح كود التصدير الى اكسل: Private Sub أمر26_Click() On Error Resume Next Dim curPath As String Dim xlApp1 As Object 'Excel.Application Dim xlWB1 As Object 'Excel.Workbook If IsNull(Me.ChooseTble) Then Beep MsgBox "اختر الجداول المراد تصديرهم" Exit Sub End If If Box.ItemsSelected.Count = 0 Then Beep MsgBox "اختر الحقول مراد تصديرهم" Exit Sub End If DTPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") 'curPath = DTPath & "\salah- " & Format(Date, "dd-mm-yyyy") & ".xlsx" curPath = DTPath & "\" & Me.ChooseTble & ".xlsx" Dim Ssql As String For Each varItm In Box.ItemsSelected Ssql = Ssql & "[" & Box.ItemData(varItm) & "] ," Next varItm Ssql = Mid(Ssql, 1, Len(Ssql) - 1) Ssql = "select " & Ssql Ssql = Ssql & " from " & ChooseTble Set QFEx = CurrentDb.CreateQueryDef("Qtoexport", Ssql) DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "Qtoexport", curPath, , "Qtoexport" 'DoCmd.OutputTo acOutputQuery, "Qtoexport", acViewPreview DoCmd.DeleteObject acQuery, "Qtoexport" Set xlApp1 = CreateObject("Excel.Application") xlApp1.Visible = False 'True Set xlWB1 = xlApp1.Workbooks.Open(curPath) Set xlWs1 = xlWB1.Worksheets("Qtoexport") xlWs1.DisplayRightToLeft = True xlWB1.Save xlApp1.Quit Set xlWs1 = Nothing Set xlWB1 = Nothing Set xlApp1 = Nothing MsgBox "لقد تم تصدير البيانات بنجاح" End Sub جعفر
  16. وعليكم السلام 🙂 حسب معرفتي ، لا يمكن ، ولكن تستطيع استعمال تقرير في وضع المعاينه ، واذا اردت عمل تغيير ، فانقر على الحقل مرتين مثلا ، فإجعل نموذج آخر يفتح على الحقل الذي انت عليه ، لكي تقوم بتعديل بياناته 🙂 جعفر
  17. وكذلك اجابة السؤال الأول 🙂 وبدون عمل تغيير على اعدادات الحقل ، لما تريد تنزل للسطر التالي في الحقل ، امسك زر المفاتيح Ctrl ثم اضغط على الزر Enter 🙂 جعفر
  18. اخي الفاضل ، المعادلة التي وضعتها لك هي نفس طلبك هذا ، وخليني اشرحها لك: myDate = تاريخ احالة المعاش D2 = خ = تاريخ اليوم / او تاريخ المقارنة = 2021 Dim myDate As Date If D2 >= DateSerial(Year(D2), 1, 1) And D2 <= DateSerial(Year(D2), 6, 30) Then اذا خ بين 1/1/2021 و 30/6/2021 اذن تاريخ احالة المعاش = 30/6/2021 myDate = DateSerial(Year(D2), 6, 30) ElseIf D2 >= DateSerial(Year(D2), 7, 1) And D2 <= DateSerial(Year(D2), 9, 30) Then اذا خ بين 1/7/2021 و 30/9/2021 اذن تاريخ احالة المعاش = خ myDate = D2 Else اذا خ غير عن الشروط اعلاه اذن تاريخ احالة المعاش = 30/6/2022 وهي السنة التالي myDate = DateSerial(Year(D2) + 1, 6, 30) End If جعفر
  19. اخي الفاضل ، في الاكسس ، تقدر تستعمل الطريقتين ، وخصوصا اذا اردت حفظ هذه القيمة في الجدول 🙂
  20. وعليكم السلام 🙂 الظاهر فيه خطأ في معادلتك ، فلما الصقتها في الاكسل اعطاني خطأ !! على العموم ، الظاهر معادلتك تكون هكذا في الاكسس: بطريقة iif والتي لا انصحك بها ، لأنك ما بتعرف كوعك من بوعك ، ولا بتقدر تعمل تعديل عليها : dim myDate as date myDate = IIf(D2 >= DateSerial(Year(D2), 1, 1) And D2 <= DateSerial(Year(D2), 6, 30), DateSerial(Year(D2), 6, 30), IIf(D2 >= DateSerial(Year(D2), 7, 1) And D2 <= DateSerial(Year(D2), 9, 30)), D2, DateSerial(Year(D2) + 1, 6, 30)) وبطريقة if السهلة الفهم والتعديل : Dim myDate As Date If D2 >= DateSerial(Year(D2), 1, 1) And D2 <= DateSerial(Year(D2), 6, 30) Then myDate = DateSerial(Year(D2), 6, 30) ElseIf D2 >= DateSerial(Year(D2), 7, 1) And D2 <= DateSerial(Year(D2), 9, 30) Then myDate = D2 Else myDate = DateSerial(Year(D2) + 1, 6, 30) End If جعفر
  21. صبحك الله بالخير اخوي خالد 🙂 انا ضعت ، فرجاء التوضيح: انت قلت الطريقة صحيحة: ثم قلت الخبراء لا ينصحون: جعفر
  22. الرابط يعطيك طريقة الحل 🙂 وبما ان سؤال الموضوع "رسالة خطا فى ويندوز ١٠ نطام ٦٤" قد تمت الاجابة عليه ، فرجاء اتباع قوانين المنتدى بعدم وضع سؤال آخر فيه 🙂 جعفر
  23. اذن فنحن مجتاجين الى مرفق 🙂 جعفر
×
×
  • اضف...

Important Information