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

نجوم المشاركات

  1. متقاعد

    متقاعد

    الخبراء


    • نقاط

      7

    • Posts

      583


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      5

    • Posts

      9,814


  3. محي الدين ابو البشر
  4. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      3

    • Posts

      12,179


Popular Content

Showing content with the highest reputation on 24 ينا, 2023 in all areas

  1. وهنا بدون الحاجة الى كود تصحيح بيانات التاريخ testdate1(1)(1).mdb
    2 points
  2. الحمد لله هكذا تعلمنا بالمحاولة والبحث والمعلومة التي تأتي بعد محاولة وبحث وجهد تبقى وترسخ .. عكس المعلومة الجاهزة
    2 points
  3. وفقا لما اشرت في ردي السابق اني عملت كود يدور على سجلات الجدول ويعيد ادخال التاريخ المسجل وبالتالي يمكن التحديث لكن هذا غير مقنع بالنسبة لي ولابد من البحث عن السبب النص المدخل في حقل تاريخ شهادة التسجيل على النحو التالي ⬇️ ‏23‏/‏01‏/‏2023 تجد انه يتكون من 15 حرف انظر للصورة 23/01/2023 بينما العدد المفروض يكون 10 احرف لذا ممكن الحل اما باستخدام كود يقوم الرمز الموجود بين الارقام او بعمل دالة لاستخدامها في الاستعلام الكود الذي عملته Dim i As Integer Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("0125") rst.MoveFirst For i = 1 To rst.RecordCount rst.Edit rst!x_date = Replace(rst!x_date, "þ", "") rst.Update rst.MoveNext Next i rst.Close في المرفق نفذ استعلام سوف يفشل الاستعلام في التحديث افتح نموذج 1 نفذ الامر سيقوم بتصحيح صيغة التاريخ وسوف يتم تنفيذ الاستعلام كما اشرت ممكن الاستغناء عن الكود عن طريق دالة في الاستعلام ولكني اكتفي هنا تحياتي testdate1(1).mdb
    2 points
  4. عليكم السلام ورحمة الله وبركاته تفضل أخي الكريم Sub test() With Sheets("يومية الحضور والإنصراف").Range("B4:C" & Sheets("يومية الحضور والإنصراف").Cells(Rows.Count, 1).End(xlUp).Row) .Formula = "=IFERROR(VLOOKUP($A:$A,Table9,COLUMN(),0),"""")" .Value = .Value End With With Sheets("رصيد الأجازات").Range("B3:D" & Sheets("رصيد الأجازات").Cells(Rows.Count, 2).End(xlUp).Row) .Formula = "=IFERROR(VLOOKUP($A:$A,Table9,COLUMN(),0),"""")" .Offset(, 3).Resize(, 1).Formula = "=IFERROR(IF(DATEDIF([@[تاريخ التعيين]],$D$1,""D"")/30>3.1,""يستحق"",""""),"""")" .Offset(, 5).Resize(, 1).Formula = "=IF([@[معادلة الرصيد]]=""يستحق"",$O$1+[@[معالجة الرصيد]],0)" .Offset(, 6).Resize(, 1).Formula = "=[@[الرصيد المرحل]]+[@[رصيد 2023]]" .Offset(, 7).Resize(, 1).Formula = "=(COUNTIFS('يومية الحضور والإنصراف'!$A:$A,$A3,'يومية الحضور والإنصراف'!$H:$H,""أجازة"")+(COUNTIFS('يومية الحضور والإنصراف'!$A:$A,$A3,'يومية الحضور والإنصراف'!$H:$H,""أجازة مجمعة"")))" .Offset(, 8).Resize(, 1).Formula = "=(COUNTIFS('يومية الحضور والإنصراف'!$A:$A,$A4,'يومية الحضور والإنصراف'!$H:$H,""أجازة عارضة""))" .Offset(, 9).Resize(, 1).Formula = "=IF(E3=""يستحق"",$N$1-[@[ عارضة]],0)" .Offset(, 10).Resize(, 1).Formula = "=(([@[إجمالي الرصيد المستحق]]-([@[ سنوي]]+[@[ عارضة]]+[@[تسوية نقدي]])))-[@[باقي رصيد العارضة]]" .Offset(, 11).Resize(, 1).Formula = "=([@[باقي رصيد السنوي ]]+[@[باقي رصيد العارضة]])" With .Resize(, 12) .Value = .Value End With End With End Sub
    2 points
  5. وعليكم السلام 🙂 فيه 3 طرق تجي على بالي ، ولكن يجب عرض التقرير في وضع معاينة الطباعة Print Preview : 1. اعد ترتيب الحقول ، واستعمل خط اكبر ، وبعدين ، والاهم ، انك توسع قسم "التفصيل" Detail ، بأنك تنزل ذيل الصفحة قدر حاجتك (شوف الاسهم) ، بحيث توسع شوي ، وتعرض التقرير في وضع معاينة الطباعة ، وتشوف اذا محتاج تزحفه اكثر واكثر . ملاحظة تقدر تستخدم Page Breaker كما سيتم شرحه في رقم 3 ، او طريقة رقم 2 ، بحيث لا تحتاج معها الى توسيع قسم "التفصيل" . 2. تنقر على قسم "التفصيل" Detail ، ثم من الاعدادادت تختار : اضافة صفحة بعد القسم . 3. استعمل Page Breaker تحت الحقول في قسم "التفصيل" Detail . جعفر 1549.تقرير لموظف واحد.accdb.zip
    2 points
  6. السلام عليكم ورحمه الله وبركاته هدية لأعضاء المنتدى الكرام برنامج أرشفة الخطابات و الوثائق .. الأرشفة الالكترونية مفتوح للعمل عليه غير محدد المدة ومش تجريبي مغلق المصدر (الاكواد) وتعديل النماذج تحياتي user 1234 1118021174_Archivesopen18-1-2021.rar
    1 point
  7. صحيح لاني جربت النسخ واللصق المباشر وتم اللصق يكفي استاذنا انك وجدت اساس المشكلة ، ومؤكد يوجد لها حل شكرا اخوي جعفر ماذا يعني هذا الحرف الغريب ؟ Chr(254): þ لأني كنت ابحث عن space (مسافة) مخفية
    1 point
  8. جزاك الله خيراً أستاذى @أبو عبدالله الحلوانى ما أريده تغيير نوع البيانات الحقل من رقم الى نص و توصلت لها من خلال المنتدى Dim db As DAO.Database Set db = CurrentDb Dim strSQL As String strSQL = "ALTER TABLE tblOld ALTER COLUMN idNum TEXT(255)" db.Execute strSQL Set db = Nothing testdate3.mdb
    1 point
  9. السلام عليكم ورحمة الله وبركاته اذا كنت تعني جلب قيمة الحقل والتعامل معه معاملة النصوص من خلال الكود فاستخدام احد دوال التغير كافي لفعل ذلك هكذا N = Cstr(idNum) 'وهكذا يمكن التعامل مع قيمة N كنص وهذا اسلم وانتهي الأمر ملاحظة لا تستخدم نوع البيانات Long integer - واستخدم Double عوضا عنها فلربما تحتاج لتشغيل برنامجك علي نسخ أكسس اصدارات اقدم من الاصدار الحالي لديك فتحدث معك مشكلات أنت بغنا عنها مستقبلا هذا والله أعلم
    1 point
  10. طيب سؤال ::: انا شايف في الملفات اختلاف اسم الجدول .... فهل اسم الجدول في الملفات مشابه لاسم الجدول في الملف العام أم هناك اختلافات في الاسماء ؟؟؟
    1 point
  11. السلام عليكم 🙂 استعمل هذا الكود للتحديث: CDate(Replace([تاريخ شهاده التسجيل],Chr(254),"")) . هكذا . وجئت بالرقم 254 من هنا جعفر
    1 point
  12. السلام عليكم 🙂 صورة الباركود اعلاه هو EAN 13 ، وهو يتكون من 12 او 13 رقم (انت عندك 11 رقم ، فيجب عليك معالجة الامر) . هناك طريقتين لعمل المطلوب ، إما بإستعمال الخط ، ويجب استعمال وحدة نمطية معها (وهذه اللي استعملتها للمرفق) : . وياريت تقرأ هذه الملاحظة من اخوي @أبو إبراهيم الغامدي . والطريقة الاخرى هي استعمال المرفق في هذا الرابط ، منه تعدل في الكود حتى يطبع الباركود EAN 13 . جعفر 1550.انشاء باركود.zip
    1 point
  13. جزاك الله الف خير وجعله في ميزان حسناتك
    1 point
  14. السلام عليكم و رحمة الله قم بتعديل sore1 الى Store 1 فى العمود B فى شيت data
    1 point
  15. اخيرا قمت بعمل كود تحديث للحقل تاريخ التسجيل في جدول 0125 بعد اسناد قيمة الحقل لمتغير ياخذ قيمته من حقل تاريخ التسجيل بعد تنفيذ الامر نفذت الاستعلام وتم الحاق كافة البيانات اتوقف هنا ونترك الامر للاساتذه
    1 point
  16. اذا اعدنا ادخال التاريخ سوف يعمل بدون استخدام دوال وبدون اجراء اي تعديلات على الملف الاصلي مع اتفاقي مع استاذي الفاضل بضرور تعديل المسميات جربت على الملف الاصلي للاستاذ لطفي اعادة ادخال التاريخ لسجلين فقط ونفذت الاستعلام وتم الحاق السجلين وفشل ادخال باقي السجلات الخمسة عشر الامر يحتاج الى مزيد من المراجعة ولكن ليس لدي الوقت
    1 point
  17. السلام عليكم ورحمة الله وبركاته 1- جدولي سندات القيد : جدول راس السند وجدول تفاصيل السند وهذين الجدولين يتم اعتمادهم في كتابة سندات القيد المزدوجة (المدين والدائن) وكل عملية تسجل في البرنامج يجب توليد سند قيد لها 2- جدولي سندات القبض والدفع وسند اليومية جدول راس السند وجدول بتفاصيل السند بحيث يقوم المستخدم للبرنامج بادخال الدفعات في هذه الجداول ثم يقوم البرنامج بتوليد سند القيد المناسب لهذه العملية سند اليومة سند القبض سند الدفع الفرق بين سند القبض والدفع وسند اليومية ان سند اليومية يمكن تسجيل فيه عمليات القبض والدفع معا اما القبض مخصص للقبض فقط والدفع مخصص للدفع فقط 2- جدولي الفواتير : جدول راس الفاتورة وجدول بتفاصيل الفاتورة (طبعا بعد اضافة الفاتورة يجب توليد سند القيد الخاص بها في جدول سندات القيد) يجب ان يحوي برنامج المحاسبة على الفواتير الرئيسية السبعة وهي : المشتريات مرتجع المشتريات المبيعات مرتجع المبيعات ادخال اخراج بضاعة اول المدة بالاضافة الى فاتورة المناقلة للنقل بين المستودعات
    1 point
  18. السلام عليكم مرفق الملف بعد إضافة الاكواد التالية مع توضيح أجزاء الكود وتفعيل عمليات البحث والاضافة والحفظ * تم اضافة زرار مؤقت باللون الاصفر لاستدعاء الفورم من الشاشة الرئيسة برنامج مخازن user 12345.zip ' تعريف المتغيرات الرئيسه Dim Sheet_Name As String Dim L_Row As Integer Dim Current_Row As Integer Private Sub UserForm_Initialize() ' ملء الكمبوبوكس الأساسى حسب جدول اسماء الشيتات L_Row = ThisWorkbook.Sheets("هام جدا للبرمجة").Range("A" & Rows.Count).End(xlUp).Row Me.ComboBox1.RowSource = "='هام جدا للبرمجة'!A2:A" & L_Row End Sub Private Sub ComboBox1_Change() ' عند اختيار اسم الشيت يتم حفظةفى المتغير الرئيسي لاستعماله فيما بعد Sheet_Name = Me.ComboBox1.Value L_Row = Sheets(Sheet_Name).Range("A" & Rows.Count).End(xlUp).Row ' ربط الشيت بالليست بوكس ListBox2.Visible = True Me.ListBox2.ColumnCount = 2 Me.ListBox2.ColumnWidths = "70,120" ListBox2.RowSource = "='" & Sheet_Name & "'!A3:B" & L_Row End Sub Private Sub ListBox2_Change() ' التنقل عبر اختيارالبنود من الليست بوكس Current_Row = ListBox2.ListIndex + 3 Me.TextBox1 = Sheets(Sheet_Name).Range("A" & Current_Row) Me.TextBox2 = Sheets(Sheet_Name).Range("B" & ListBox2.ListIndex + 3) End Sub Private Sub CommandSearch_Click() ' البحث عن قيم معينة وادراجها فى الليست بوكس الخاصة بالبحث ListBox1.Clear If Len(Sheet_Name) = 0 Then MsgBox "من فضلك اختار ورقة العمل" Exit Sub End If If Len(Trim(TextBox3.Text)) = 0 Then MsgBox "لم يتم إدخال قيمة للبحث عنها" ListBox1.Visible = False Exit Sub End If Dim myArray() As String Dim iRow As Integer ListBox1.ColumnCount = 3 ListBox1.ColumnWidths = "0, 70,120" For i = 0 To ListBox2.ListCount - 1 If InStr(1, ListBox2.List(i, 1), TextBox3.Text) <> 0 Then ListBox1.AddItem ' إضافة عمود مخفى برقم البند فى الليست يوكس الاساسي لتسهيل التنقل ListBox1.List(ListBox1.ListCount - 1, 0) = i ListBox1.List(ListBox1.ListCount - 1, 1) = ListBox2.List(i, 0) ListBox1.List(ListBox1.ListCount - 1, 2) = ListBox2.List(i, 1) End If Next ListBox1.Visible = True End Sub Private Sub ListBox1_Change() 'كود التنقل بواسطة قائمة نتائج البحث If ListBox1.ListCount > 0 Then If ListBox1.ListIndex > -1 Then ListBox2.ListIndex = ListBox1.List(ListBox1.ListIndex, 0) End If End If End Sub Private Sub Command_Add_Click() ' لإضافة بند جديد يتم إضافة سطر الى مصدر الليست الاساسى ثم التنقل الى السطر الجديد If Len(Sheet_Name) = 0 Then MsgBox "من فضلك اختار ورقة العمل" Exit Sub End If L_Row = L_Row + 1 ListBox2.RowSource = "='" & Sheet_Name & "'!A3:B" & L_Row ListBox2.ListIndex = L_Row - 3 End Sub Private Sub CommandDelete_Click() ' كود الحذف If Len(Sheet_Name) = 0 Then MsgBox "من فضلك اختار ورقة العمل" Exit Sub End If If Current_Row = 0 Then MsgBox "قم باختيار القيم التى تود حذفها" Exit Sub End If Dim R R = MsgBox("هل ترغب فى حذف السطر الحالى", vbOKCancel + vbCritical + vbMsgBoxRight + vbMsgBoxRtlReading, "تاكيد الحذف") If R = vbOK Then Sheets(Sheet_Name).Rows(Current_Row).Delete End If ComboBox1_Change End Sub Private Sub CommandSave_Click() ' كود الحفظ If Len(Sheet_Name) = 0 Then MsgBox "من فضلك اختار ورقة العمل" Exit Sub End If If Current_Row = 0 Then MsgBox "قم باختيار القيم التى تود تعديلها او حفظها مسبقا" Exit Sub End If If TextBox1.Text = "" Or TextBox2.Text = "" Then MsgBox "هناك خطأ فى بيانات الكود أو الاسم" Exit Sub End If 'يمكنك هنا ايضا إضافة جمل برمجيةالتأكد من عدم تكرار رقم الصنف اوالكود مسبقا If Application.WorksheetFunction.CountIf(Sheets(Sheet_Name).Range("A1:A" & L_Row), TextBox1.Text) > 0 Then If Sheets(Sheet_Name).Range("A" & Current_Row).Value = TextBox1.Text Then GoTo 1 MsgBox "الكود المدخل متكرر برجاء التأكد من عدم تكرار الاكواد", vbOK + vbCritical + vbMsgBoxRight + vbMsgBoxRtlReading, "الكود موجود مسبقا" TextBox1.Text = Sheets(Sheet_Name).Range("A" & Current_Row).Value Exit Sub End If 1: Dim CodeNr Dim CodeDiscr ' يفضل حفظ البيانات بعد التحديث فى متغيرات مؤقتة لتفادى الخطأ اثناء الحفظ ثم تحديثها فى ورقة العمل CodeNr = TextBox1.Text CodeDiscr = TextBox2.Text Sheets(Sheet_Name).Range("A" & Current_Row).Value = CodeNr Sheets(Sheet_Name).Range("B" & Current_Row).Value = CodeDiscr MsgBox "تم حفظ البيانات بنجاح", vbInformation + vbMsgBoxRight + vbMsgBoxRtlReading, "تاكيد" End Sub Private Sub CommandEnd_Click() Me.Hide UserFormMain.Show End Sub
    1 point
  19. معذرة أخ محمد هذا بحسب معرفتي المتواضعة إن شاء الله أحد من الأعضاء يفيدك
    1 point
  20. اذا كنت ترغب في الحفظ كملف بي دي أف يمكنك استخدام الكود التالي ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" & يتم وضع الاسم المراد الحفظ به أو الاشارة الى خلية وسوف يتم تسمية الملف بمحتوى الخلية, Quality:=xlQualityMinimum, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False أو اذا كنت ترغب بالحفظ العادي يمكنك استخدام this workbook.save
    1 point
  21. =Count(*) مشكلة التقرير في هذه الدالة ، لا أنصح باستخدامها فهي من "تخرب" الترتيب. شكرا عمي على تفضلكم.
    1 point
  22. هكذا: Nz(DLookup("[متوسط سعر الشراء]"; "[qryItemsCosts]"; "[اسم الصنف]='" & [اسم الصنف] & "'"); 0)
    1 point
  23. هذه السطور arr = WSData.Range("A2:Q" & WSData.Cells(Rows.count, 1).End(xlUp).Row).Value ReDim Temp(1 To UBound(arr, 1) * 3, 1 To 4) For J = 0 To 2 P = P + 2 الي arr = WSData.Range("A2:AF" & WSData.Cells(Rows.count, 1).End(xlUp).Row).Value ReDim Temp(1 To UBound(arr, 1) * 5, 1 To 4) For J = 0 To 4 P = P + 4 بدل ال Q ضع اخر عامود عندك AF بدل ال * 3 ضع * 5 بدل ال For J = 0 To 2 ضع For J = 0 To 4 بدل P = P + 2 ضع P = P + 4 المصنف2.xlsm
    1 point
  24. السلام عليكم ورحمة الله وبركاته اسعد الله اوقاتكم جميعا بالنسبة لبناء برنامج مشتريات ومبيعات فأولا يجب تسميته برنامج محاسبة بحيث لا يمكن ان تحصل على مبيعات والمشتريات بدون كامل ارتباطهم باخواتهم في المحاسبة لذلك سأسرد لك اهم الجداول التي تحتاجها لبناء قاعدة بيانات محاسبية 1- جدول شجرة الحسابات وهو جدول تضع فيه اسماء الحسابات التي سوف تستخدمها في البيع والشراء والمصاريف هذا نموذج ادخال على شجرة الحسابات وهذه صورة عن الجدول الحسابات 2- جدول المواد: هو جدول تضع فيه الاصناف التي تستخدمها في بيع او الشراء ويسمى شجرة المواد وهذا جدول المواد 3- جدول العملات اذا كنت تحتاج استخدام اكثر من عملة 4- جدول المستودعات 5- جدول مراكز الكلفة : وهو جدول يستخدم في القيود لحساب الكلفة وضبط المصاريف على المراكز (قد لا تحتاجه في عملك) 6- جدول المستخدمين هذه الجداول هي جداول التعريف الاساسية لاي برنامج محاسبة في مشاركة اخرى ساضع لك جداول الادخال
    1 point
  25. السلام عليكم لدي في النموذج زر لإضافة صورة يقوم بنسخ الصورة وحفظها برقم السجل في فولدر Pictures ولدي زر اخر يحفظ صورة من سكانر المطلوب اخواني الكرام محتاج تعديل على كود زر السكانر بحيث يقوم بأظهار الصورة في النموذج ضمن اطار Image ويحفظ الصورة في نفس الوقت في فولد الصور Pictures ويحفظها برقم السجل أيضا ً اي بمعنى يكون عمل كود السكانر مشابه لعمل كود الصورة مع فائق الشكر والاحترام New.rar
    1 point
×
×
  • اضف...

Important Information