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

kanory

الخبراء
  • Posts

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

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

  • Days Won

    138

مشاركات المكتوبه بواسطه kanory

  1. منذ ساعه, مازن الحسيني said:

    بعد ان يتم تصدير تقرير الاكسس الى الاكسل المطلوب :-

    1- ان يكون كل اسم من الاسماء في خلية واحدة 

    2- ان تكون الارقام والتواريخ التابعه للاسم كذلك في خلية واحدة واحدهما اسفل الاخر

    كما في الصوره المرفقة 

    هل هذا التصور المطلوب .......................

     

    1.jpg

    على كل حال جرب الموفق ....................

     

    مثال.accdb

    • Like 1
  2. 5 دقائق مضت, ابوخليل said:

    طيب أبا جودي

    ما قد سمعت عن شيء اسمه اثبات حضور ؟ لا اعلم ان كان بالعسكرية او الشركات ..

    فقط يطل يوريهم وشه 🤓 للتأكد ما يكون حد مزوغ

    يعني هذه اخت هذه .. بمعنى لا بد من تجديد التوقيع خلال 24 ساعة او 12 ساعة حسب الذي يفرضه صاحب القرار

    هذا اعتمده رئيس احدى البلديات في احدى المناطق .... حتى يضمن تواجد الموظفين ....

  3. 5 دقائق مضت, ابوخليل said:

    اهلا اخي محمد

    انت صنعت الدالة على ايام الاسبوع .. والاستعلام لا نحتاج فيه الى الأيام حتى ارقام الأيام التي نتعامل معها تبقى في الدالة فقط

    وقد جربت ولم تظهر السجلات حسب المطلوب .. رغم اني تحققت من البيانات في الجدول

    اشكرك على التفاعل والمشاركة

    الدالة هي التي تستخدم ايام الاسبوع ولاتظهر في الاستعلام مطلقا

     

    1.jpg

    • Like 1
  4. في 17‏/6‏/2025 at 10:48, ابوخليل said:

    في الجدول tblCtrlDetails

    اريد من خلال استعلام اظهار السجل الذي يمثل الوقت الحالي حسب اليوم والفترة فقط

    الوقت الحالي محصور بين وقتين (بداية ونهاية )

    ......................................................

    الأيام  :  أيام الأسبوع  : الأحد /الاثنين / الثلاثاء / الأربعاء / الخميس

             نهاية الأسبوع  : الخميس / الجمعة / السبت

    لاحظ ان يوم الخميس مشترك

    ..................................................................

    لك مطلق الحرية في تغيير اوقات الفترات ... والأيام

    واعتقد من اجل التجربة يجب العبث بوقت جهاز الحاسوب

    تفضل جرب استاذي الفاضل كل الاحتمالات ...................... واعملنا بالنتيجة
     

    Database1 (36).accdb

    • Like 1
  5. 3 دقائق مضت, ابوخليل said:

    شغال 100%

    و مع الخطأ في الأساسات .. العمل على جدولين كالعمل على جدول واحد

    كلامك وكلام الزملاء صحيح 

    عند اتباع الخطوات الصحيحة وخاصة الجداول تسهل عملية ادخال واخراج البيانات

    بارك الله فيكم استاذ @ابوخليل

  6. منذ ساعه, ibaradah said:

    تفضل حبيبي قاعدة البيانات

    استخدم هذه الشيفرى
     

    Private Sub Command30_Click()
    Dim rs As DAO.Recordset
    
    With Forms("القرآن الكريم")
        Set rs = .RecordsetClone
        rs.FindFirst "SurahNo = 1" ' عدّل القيمة حسب ما تريد البحث عنه
        If Not rs.NoMatch Then
            .Bookmark = rs.Bookmark
        Else
            MsgBox "لم يتم العثور على السورة المطلوبة.", vbExclamation
        End If
    End With
    End Sub
    
    Private Sub Command33_Click()
    Dim rs As DAO.Recordset
    
    With Forms("القرآن الكريم")
        Set rs = .RecordsetClone
        rs.FindFirst "SurahNo = " & Me![SurahNo] + 1
        If Not rs.NoMatch Then
            .Bookmark = rs.Bookmark
        Else
            MsgBox "لم يتم العثور على السورة السابقة.", vbExclamation
        End If
    End With
    End Sub
    
    Private Sub Command34_Click()
    Dim rs As DAO.Recordset
    
    With Forms("القرآن الكريم")
        Set rs = .RecordsetClone
        rs.FindFirst "SurahNo = " & Me![SurahNo] - 1
        If Not rs.NoMatch Then
            .Bookmark = rs.Bookmark
        Else
            MsgBox "لم يتم العثور على السورة السابقة.", vbExclamation
        End If
    End With
    End Sub
    
    Private Sub Command35_Click()
    Dim rs As DAO.Recordset
    
    With Forms("القرآن الكريم")
        Set rs = .RecordsetClone
        rs.FindFirst "SurahNo = 114" ' عدّل القيمة حسب ما تريد البحث عنه
        If Not rs.NoMatch Then
            .Bookmark = rs.Bookmark
        Else
            MsgBox "لم يتم العثور على السورة المطلوبة.", vbExclamation
        End If
    End With
    End Sub

     

    طبعا التعديل على المثال الاول الذي اوردته انت

  7. منذ ساعه, dd13901390 said:

    وهو عبارة عن فتح النماذج عن طريق القائمة المنسدلة واريد كذلك فتح الملف المرفق بالاكسل يكون من ضمن القائمة باسم (a1 ) طبعا كلهم في الاكسس والمطلوب موجود في البرنامج 

    طلبك غريب شوي ,,,,,, لكن استخدم هذه الاكواد ...............................

    Private Sub Form_Load()
        Dim db As DAO.Database
        Dim obj As AccessObject
        Dim strPath As String
        Dim strFile As String
        Dim RowSource As String
    
    
        ' إضافة النماذج الموجودة (مع استثناء نموذج "main")
        Set db = CurrentDb
        For Each obj In CurrentProject.AllForms
            If LCase(obj.Name) <> "main" Then
                RowSource = RowSource & "نموذج:" & obj.Name & ";"
            End If
        Next obj
    
        ' البحث عن ملفات إكسل في نفس مسار قاعدة البيانات
        strPath = CurrentProject.Path & "\"
        strFile = Dir(strPath & "*.xlsx*") ' يشمل xls و xlsx
    
        Do While strFile <> ""
            RowSource = RowSource & "ملف:" & strFile & ";"
            strFile = Dir
        Loop
    
        ' تحديث مصدر الصفوف لمربع التحرير والسرد
        If Right(RowSource, 1) = ";" Then
            RowSource = Left(RowSource, Len(RowSource) - 1)
        End If
    
        Me.مربع_تحرير_وسرد1.RowSourceType = "Value List"
        Me.مربع_تحرير_وسرد1.RowSource = RowSource
    End Sub
    
    Private Sub مربع_تحرير_وسرد1_AfterUpdate()
        Dim selectedItem As String
        selectedItem = Me.مربع_تحرير_وسرد1.Value
    
        If Left(selectedItem, 6) = "نموذج:" Then
            DoCmd.OpenForm Mid(selectedItem, 7)
    
        ElseIf Left(selectedItem, 4) = "ملف:" Then
            Dim filePath As String
            filePath = CurrentProject.Path & "\" & Mid(selectedItem, 5)
    
            Dim xlApp As Object
            On Error Resume Next
            Set xlApp = CreateObject("Excel.Application")
            On Error GoTo 0
    
            If Not xlApp Is Nothing Then
                xlApp.Visible = True
                xlApp.Workbooks.Open filePath
            Else
                MsgBox "تعذر تشغيل Microsoft Excel.", vbExclamation
            End If
        End If
    End Sub
    

     

  8. 3 ساعات مضت, RAIANESAMI said:

    نرجوا من الإخوة مساعدتي

    اخي ريان نحاول المساعدة ولكنك لم تكلف نفسك بادراج ملف PDF الموجود لديك لنرى التصميم لديك ولا قاعدة بياناتك ( انت ادرجت لنا مرة اخرى قاعدة بيانات الاستاذ @kkhalifa1960

    لنقل بيانات من الاكسس الى PDF :

    اولا يجب ان يكون لديك برنامج برنامج Adobe Acrobat Pro (وليس Adobe Reader فقط) او برنامج PDFtk

    ثانيا ملف PDF يجب ان يكون استمارة فردية اي لعرض بيانات فردية وليس نموذج مستمر كما ارفقت انت في مثال اخونا خليفة

    ثالثا تفعيل المرجع Adobe Acrobat xx.x Type Library (xx = رقم الإصدار مثل 10.0 أو 11.0)

    رابعا يجب أن يحتوي ملف الـ PDF على الحقول المسماة مثلا : وهذه يم اضافتها عن طريق البرامج المذكورة في اولا

    • "Text1"

    • "Dropdown2"

    • "todaysDate"

    خامسا استخدام هذه الشيفرة اذا كان البرنامج المستخدم PDFtk :::::::::::::::::::::::::

    Sub FillPDF()
        Dim tempFDF As String
        Dim pdfInput As String
        Dim pdfOutput As String
        Dim shellCmd As String
        Dim fso As Object
        Dim fdfContent As String
        Dim pdftkPath As String
        Dim appPath As String
    
        ' تحديد مسار البرنامج الحالي (نفس مجلد قاعدة البيانات أو ملف الإكسل)
        appPath = Application.CurrentProject.Path ' Access
        ' إذا كنت تستخدم Excel بدلاً من Access، استبدل بالسطر التالي:
        ' appPath = ThisWorkbook.Path
    
        ' تحديد مسار الملفات
        pdfInput = appPath & "\template.pdf"         ' اسم ملف PDF بجانب الملف
        pdfOutput = appPath & "\output_filled.pdf"   ' ملف الإخراج بجانب الملف
        tempFDF = appPath & "\temp_data.fdf"         ' ملف FDF مؤقت
    
        ' مسار برنامج PDFtk
        pdftkPath = """C:\Program Files (x86)\PDFtk Server\bin\pdftk.exe"""
    
        ' تحضير محتوى FDF
        fdfContent = "%FDF-1.2" & vbCrLf
        fdfContent = fdfContent & "1 0 obj<</FDF<< /Fields[" & _
            "<< /T (Text1) /V (" & Me.Text0.Value & ") >>" & _
            "<< /T (Dropdown2) /V (" & Me.Text2.Value & ") >>" & _
            "<< /T (todaysDate) /V (" & Me.Text4.Value & ") >>" & _
            "] >> >>endobj" & vbCrLf
        fdfContent = fdfContent & "trailer<</Root 1 0 R>>" & vbCrLf
        fdfContent = fdfContent & "%%EOF"
    
        ' إنشاء ملف FDF
        Set fso = CreateObject("Scripting.FileSystemObject")
        With fso.CreateTextFile(tempFDF, True)
            .Write fdfContent
            .Close
        End With
    
        ' تنفيذ الأمر باستخدام PDFtk
        shellCmd = pdftkPath & " """ & pdfInput & """ fill_form """ & tempFDF & """ output """ & pdfOutput & """ flatten"
        Shell shellCmd, vbHide
    
        MsgBox "تم إنشاء الملف: " & pdfOutput
    End Sub

    سادسا استخدام هذه الشيفرة اذا كان البرنامج المستخدم Adobe Acrobat Pro :::::::::::::::::::::::::

    
        Dim AcroApp As Acrobat.CAcroApp
        Dim theForm As Acrobat.CAcroPDDoc
        Dim jso As Object
        Dim path As String
        Dim field As Object
            Dim Text1, Dropdown2, todaysDate As String
            Dim Text0, Text2, Text4 As String
         Set AcroApp = CreateObject("AcroExch.App")
        Set theForm = CreateObject("AcroExch.PDDoc")
        theForm.Open (Me.Label16.Caption)
        Set jso = theForm.GetJSObject
        'write the values to corresponding pdf fields
            jso.getfield("Text1").Value = Me.Text0.Value
            jso.getfield("Dropdown2").Value = Me.Text2.Value
            jso.getfield("todaysDate").Value = Me.Text4.Value
        theForm.Save PDSaveIncremental, Me.Label16.Caption
    
        theForm.Close
         
        AcroApp.Exit
        Set AcroApp = Nothing
        Set theForm = Nothing

    سابعا ::: انا دوري انتهى هنا بارك الله فيك

    • Like 2
    • Thanks 1
  9. في 28‏/4‏/2025 at 23:50, RAIANESAMI said:

    مشكور كثيرا انت قريب من فكرتي

    وهو  ان ملف  PDF  يكون جاهز مكتوب عليه  فقط في البداية

    الرقم:

    اللقب:

    الاسم:

    تاريخ الميلاد:

    و عندما ابحث اي  موظف  مثلا  رقم 1001  فانها صفحة PDF  تظهر المغلومات في مكانها

      مثل 

    الرقم:1001

    اللقب:ALI

    الاسم:Hassan

    تاريخ الميلاد:01/01/1999

    PDF 01.jpg

    PDF 02.jpg

    هل البيانات المنقولة باللغة الانجليزية ام العربية 

    وهل ممكن مرفق كمثال للتطبيق عليه

    • Like 1
  10. 2 ساعات مضت, ابو عارف said:

    إخواني الأعزاء ؛ معاينة من صفحة الى الصفحة في أكسس غريبة بنسبة لي لأن أكسس  ليس مثل إكسل  أو الوورد ، في مستند الوورد أو مصنف اكسل يمكن تحديد صفحات من مستند أو مصنف ثم يطلب من طابعة طباعة من صفحة كذا الى صفحة كذا , ولكن في اكسس يتم تصفية تقرير على معيار بيانات مراد طباعتها ثم يطبعه مباشر أو عرضه في معاينة قبل طباعة , و طريقة طباعة من صفحة الى صفحة في اكسس لا أحد يعلم أي صفحة تحتوي على أي بيانات حتى بعد عرض تقرير في عرض معاينة , وفي الحالة يجب عرض تقرير بجميع صفحاته ثم يختار صفحات ما يريد طباعته .

    اخي @ابو عارف وعليكم السلام ورحمة الله وبركاته .... تقبل الله منا ومنكم صالح الاعمال

    في اذا كنت قصد الطباعة جرب هذا الكود .....

    Sub PrintReportPages()
        Dim rptName As String
        Dim startPage As Integer
        Dim endPage As Integer
    
        ' اسم التقرير
        rptName = "اسم_التقرير"
    
        ' تحديد نطاق الصفحات
        startPage = 2
        endPage = 5
    
        ' فتح التقرير في وضع المعاينة
        DoCmd.OpenReport rptName, acViewPreview
    
        ' طباعة الصفحات المحددة
        DoCmd.PrintOut acPages, startPage, endPage
    
        ' إغلاق التقرير بعد الطباعة
        DoCmd.Close acReport, rptName
    End Sub

     

  11. 2 ساعات مضت, Mohamed Abo Elala said:

    نفس البنية للجداول

    اخي محمد 

    هل هناك جداول أخرى مرتبطة برقم id غير الجدولين الموجودين في المثال وهل لو تم تغيير الرقم تتأثر بذلك بيانات أخرى في جداول أخرى ام لا  .... لان الربط بحقل ترقيم تلقائي هذه واحدة من مشاكله .

     

  12. 24 دقائق مضت, طاهر اوفيسنا said:

    شكرا استاذ على الاهتمام فعلا هو مستثنى من الاقتطاع واشرت له في الرد الشادي بالصور باللون الاخضر مافيش مشكلة بهذا المشكلة في باقي العمال لم يدفعو المبلغ ولم يتم الاقتطاع التلقائي لهم خلال مارس وهذا بيت القصيد

    طيب حبه حبه 

    الان كريمو٦٧ أليس دافع للانخراط من خلال الصورة الأولى ... لاحظ الصورة الاولى

  13. 1 ساعه مضت, طاهر اوفيسنا said:

    استاذ الان لاحظت ان التقرير يظهر بالاعلى شهر فبراير ولكن مضمون اقتطاعه شهر مارس لاحظ عند اقتطاع الانخراط تجد مبلغ 1500 معناه شهر مارس لان فبراير نجدها كلها 0.00 الا حالات الدفع الخاصة

    انظر لهذا العامل تم دفع الانخراط ....

    وانت طالب في موضوع سابق ان يتم تجاوز العامل الذي دفع 3000 لذلك تم تجاوزهم من دفع الانخراط

     

    1.jpg

    2.png

  14. 2 دقائق مضت, ابوخليل said:

    الاخوة الكرام @kanory  و @عمر ضاحى

    شكرا جزيلا لكما

    عجيب .. كنت صاحب التفاعل والرد الأول  مع موضوع اخونا @jjafferr  وكأني لم اسمع به من قبل او يمر علي ... الله المستعان .. نسأله سبحانه حسن الختام .

    كلنا ذاك الرجل ..... امين .... 

  15. وعليكم السلام ورحمة الله وبركاته

    اخي @ابوخليل انظر هذا الموضوع قد يفيدك
     

    في 29‏/1‏/2022 at 08:36, jjafferr said:

    السلام عليكم 🙂

     

    وما في كائنات مخفية 🙂

    AccessTableMagic.gif.87bab915394c5cc3799d39ddc2409a6c.gif

     

    والنتيجة النهائية ، لاحظوا الحقل الاخير على اليمين Change_Delete_Insert ، فهو يخبرنا اذا قمنا بعملة تعديل او حذف او اضافة :

    image.png.4a9a5c86b03a9e550d9f93860f463731.png

    .

    جعفر

    Access Tables Magic.accdb.zip 20.93 kB · 255 downloads

     

×
×
  • اضف...

Important Information