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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    406

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

  1. السلام عليكم 🙂 قراءة الرسائل من الجدول اسهل بكثير ، وجدا عملية ، ويمكن تغييرها ببساطة 🙂 بالاضافة الى المرفق في الرابط اعلاه ، هنا شرح آخر لنفس الطريقة : جعفر
  2. وعليكم السلام 🙂 تفضل : جعفر
  3. السلام عليكم 🙂 شكرا جزيلا اخوي حسين على هذه الخطوات وبالتفصيل 🙂 جعفر
  4. وعليكم السلام 🙂 حيا الله ولد بلادي 🙂 نفس الاجابة اللي اخبرتك عنها هنا : جعفر
  5. في الواقع هذه الخطوة عبارة عن تسهيل جدا كبير للمبرمج 🙂 وقد يكون في الامكان الاستغناء عن الخطوة السابقة ، وعمل كل شيء في هذه الخطوة ، طبعا هذا سيعقد الكود و "رسم النمط وفق النسق" 🙂 شكرا جزيلا اخوي ابو ابراهيم لهذه المشاركة الدسمة 🙂 جعفر
  6. عمل جميل استاذ ابو ابراهيم ، ولكننا اضطررنا الى العودة الى الوحدة النمطية 🙂 والشيء الجميل في طريقتك ، انها تخلصت من علامات الاستفهام كذلك مرة واحدة 🙂 يبقى تفكيك نتيجة السجل النظيف الى 3 سجلات 🙂 جعفر
  7. هذه الرسالة لا علاقة لها بأي من انواع الاكسس ، فهي تقول : بأن البرنامج لم يحصل على الوحدة النمطية InputBoxDK في برنامجك !! اذا ممكن ترفق لنا برنامجك ، او ترفعه الى احد مواقع الرفع واعطاءنا الرابط 🙂 جعفر
  8. اخي الفاضل ، لا يكفي ان تنقل هذه الجزئية فقط الى برنامجك ، فهناك وحدة نمطية اسمها ويجب نقلها كذلك الى برنامجك الآخر 🙂 جعفر
  9. تفضل 🙂 جعفر اخفاء الرقم السري.zip
  10. السلام عليكم 🙂 شكرا جزيلا اخوي أبو إبراهيم على كلماتك العطرة 🙂 انا احاول قد الامكان ان استعمل الاستعلام لتنفيذ اي موضوع في الاكسس ، لأنه سيكون الاسرع ، ونفس الشيء حاولته لهذا التفكيك قبل ان اعمل الموضوع ، ولكني لم اصل لنتيجة !! ومن الوقت الذي وضعت فيه ملاحظتك ، وانا افكر ، وما توصلت لنتيجة : ما ممكن نستعمل Split ، إلا اذا عرفنا "شرط القطع" (علامة تجارية مسجلة 🙂 ) ، حاولت مع Split ان اخليه يتعرف على الارقام بواسطة "شرط القطع" isNumeric و IN ، ولكن اكسس لا يقبل هذا ، ما ممكن نستعمل inStr و inStrRev ثم isNumeric ، لأن الارقام اللي في السجلات ، ليست بأرقام في نظر الاكسس (استعملت inStrRev في الصورة المرفقة) : . وفي كل خطوة من الخطوات اعلاه في الاستعلام ، اشوف نفسي انجذب لعمل وحدة نمطية لجزئية معينه من كود الاستعلام جعفر
  11. هل جربت هذا الموضوع ؟ جعفر
  12. كنت اعتقد بأني انتبهت لهذه النقطة !! شكرا على الملاحظة ، وقد تم تعديل المرفق في المشاركة الاصل ، فرجاء انزال المرفق مرة اخرى 🙂 جعفر
  13. وعليكم السلام 🙂 سؤالك غير واضح !! جعفر
  14. وعليكم السلام 🙂 الافضل ان تجعل الاستعلام مصدر بيانات للنموذج ، لأنك هناك تقدر تعمل تصفية ، و فرز (التسلسل) الذي تريده ، ويمكن عمل فرز لأاكثر من حقل ، مثلا: الفرز الاول يكون باسم القسم ، ثم الفرز التالي يكون للدرجة ، ثم الفرز التالي يكون للإسم ، وهكذا 🙂 جعفر
  15. وعليكم السلام 🙂 هذا رد على سؤالك : . والبرنامج يتحكم بهذا الكم الهائل من المرفقات في اول 2018 ، وفي 8/2019 وصل حجم المرفقات الى اكثر من 1 تيرا بايت : جعفر
  16. السلام عليكم 🙂 وهذه طريقة اخرى ، للنواتين 32 و 64بت : . او ايش رايك في كلمة سر متغيرة ، يعني مافي داعي تخاف احد يشوفها ، لأنها تتغير دائماً كل دقيقة 🙂 جعفر
  17. شكرا جزيلا اخي حسين 🙂 شرح وافي 🙂 بس اللي لفت نظري في الفيديو ، انك تقرأ بيانات الهوية من قارئ البطاقة المدنية تلقائيا ، فياريت تتفضل علينا بالطريقة هنا 🙂 جعفر
  18. الله ان شاء الله يقويك على هذا العمل ، ويعطي الوالد الصحة والعافية ، ياريت تتفضل علينا بهذا الحل 🙂 جعفر
  19. حياك الله 🙂 جعفر
  20. بس الظاهر انك فهمت السؤال صح ، بينما انا قرأت رأس الموضوع ، وما لاحظت الملاحظة إلا بعد ان وضعت ملاحظتي !! على العموم ، هذه طريقتي ، لحدث الزر (طبعا بالاضافة الى الكود في مشاركتي السابقة) : Private Sub T_m_Click() On Error GoTo err_T_m_Click If Len(Me.FROM & "") = 0 Then MsgBox "رجاء تعبئة التاريخ من" Me.FROM.SetFocus ElseIf Len(Me.TO & "") = 0 Then MsgBox "رجاء تعبئة التاريخ الى" Me.TO.SetFocus ElseIf Len(Me.PN & "") = 0 Then MsgBox "رجاء اختيار اسم المشروع" Me.PN.SetFocus Me.PN.Dropdown Else DoCmd.OpenReport "All_Proj", acViewPreview End If Exit_T_m_Click: Exit Sub err_T_m_Click: If Err.Number = 2501 Then 'No data Else MsgBox Err.Number & vbCrLf & Err.Description End If Resume Exit_T_m_Click End Sub . جعفر 1253.APE (1).accdb.zip
  21. وعليكم السلام 🙂 في التقرير ، في حدث No Data ، اكتب هذا الكود (طبعا يمكنك حذف سطر الرسالة، ولكني افضل ان يعرف المستخدم ان البرنامج يعمل وان التقرير فارغ) : Private Sub Report_NoData(Cancel As Integer) MsgBox "لا توجد بيانات" Cancel = True End Sub جعفر
  22. السلام عليكم 🙂 الخطوة الاولى وبالتفصيل هي تصفية البيانات : . وهذا الكود كاملا لبرنامجك ، وحفظ البيانات في الجدول: Public Function Split_Names() Dim rst, rst2 As DAO.Recordset Dim x() As String: Dim x2() As String Dim i, j As Long Dim a As String Set rst = CurrentDb.OpenRecordset("Select * From MyTxt_from_pdf") Set rst2 = CurrentDb.OpenRecordset("Select * From tbl_Names") ' Do Until rst.EOF ' For i = 1 To Len(rst!Field1) ' a = Mid(rst!Field1, i, 1) 'الحروف/الارقام/العلامات ' a = a & "(" & AscW(a) & ") " 'رقمها AscW ' Debug.Print a ' Next i ' loop Do Until rst.EOF x = Split(rst!Field1, ChrW(8236) & ChrW(8236) & ChrW(32) & ChrW(32)) 'Name + ID For i = LBound(x) To UBound(x) 'Debug.Print x(i) x2 = Split(x(i), ChrW(8236) & ChrW(32) & ChrW(32)) For j = LBound(x2) To UBound(x2) 'Debug.Print x2(j) a = Replace(x2(j), ChrW(8234), "") a = Replace(a, ChrW(8235), "") a = Replace(a, ChrW(8236), "") a = Trim(a) 'If j / 2 = Int(j / 2) Then If j = 0 Then 'even rst2.AddNew rst2!iName = a Else 'odd 'the numbers in Arabic are different (text) than those in English, so we have to get the value of the normal number '0=1632, 1=1633, 2=1634, 3=1635, 4=1636, 5=1637, 6=1638, 7=1639, 8=1640, 9=1641 'Arabic Numbers '0=48, 1=49, 2=50, 3=51, 4=52, 5=53, 6=54, 7=55, 8=56, 9=57 'ascii 'instead of using long if statements, lets make a formula: 0=48=1632-1584 rst2!iID = ChrW(AscW(a) - 1584) rst2.Update End If 'Debug.Print a Next j Next i rst.MoveNext Loop rst.Close: Set rst = Nothing End Function . اما البحث عن مشكلة مع اللغة العربية في ال او لفظ الجلالة ، فانا عملت وحدة نمطية تقوم بتغيير الاسم ، ولكن يتوجب عليك اضافة بقية الاسماء المقطوعة في الوحدة النمطية ، في المتغير arr : Public Function Reconstruct_Allah_Name(N As String) As String Dim arr() Dim x arr = Array("عطاا", "عبدا") For Each x In arr If InStr(N, x & " ") > 0 Then 'there is a space after the missing name Reconstruct_Allah_Name = Replace(N, x, x & "لله") Exit Function ElseIf InStr(N, x) + Len(x) - 1 = Len(N) Then 'the missing name is at the end of the line Reconstruct_Allah_Name = Replace(N, x, x & "لله") Exit Function Else Reconstruct_Allah_Name = N End If Next x End Function . ثم يقوم استعلام التحديث qry_Reconstruct_Allah_Name بمناداة الوحدة النمطية اعلاه ، وتغيير الكلمات 🙂 والعمل يتم بالنقر على الزر المشار اليه في الصورة ادناه ، في النموذج Form1 : . جعفر 1251.db1.mdb.zip
×
×
  • اضف...

Important Information