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

محمد أبوعبدالله

الخبراء
  • Posts

    1,998
  • تاريخ الانضمام

  • Days Won

    26

مشاركات المكتوبه بواسطه محمد أبوعبدالله

  1. تفصل اخي الكريم

        Dim X As String
        Dim X1() As String
        Dim i As Integer
        
        DoCmd.GoToRecord , , acFirst
        For i = 1 To Me.RecordsetClone.RecordCount
        
            X = Nz(DLookup("[سعر الوحدة] & '|' & [الوحدة] & '|' & [الصنف] & '|'", "اكواد", "[كود الصنف]='" & Me.كود_الصنف & "'"), "||||")
            X1 = Split(X, "|")
            
            Me.وحدة = X1(1)
            Me.السعر = X1(0)
            Me.اسم_صنف = X1(2)
            Call كود_صنف_AfterUpdate
            DoCmd.GoToRecord , , acNext
        Next

    2استعلام.rar

    تحياتي

    • Sad 1
  2. بداية عوداً حميداً اخي @محسن سرحان

    هذه محاولة ارجو ان تفيدك باذن الله

    1 - حولت حقل الصورة الى مربع نص / Long Text

    2 - اضفت كود للحصول على امتداد الملف وهو كالتالي

    Function File_Type(filename)
        
        Dim File_Folder As String
        File_Path = CurrentProject.Path & "\" & "\Img\"
        File_Folder = Dir(File_Path & filename & "*")
        File_Type = Right$(File_Folder, Len(File_Folder) - InStrRev(File_Folder, "."))
        
    End Function

    3 - وضعت كود لتحديث حقل الصورة باسم الصورة الذي هو ID مع امتداد الملف ( وهذه لجميع الصور ) ان وجد

        Dim rs As DAO.Recordset
        Dim i As Integer
    
        Set rs = CurrentDb.OpenRecordset("SELECT * FROM Table1")
        File_Path = CurrentProject.Path & "\" & "\Img\"
        
                If Not rs.BOF Then
                    rs.MoveFirst
                    While (Not rs.EOF)
                        rs.Edit
                            If Len(File_Type(rs.Fields(0))) > 0 Then
                                 rs.Fields(2) = File_Path & rs.Fields(0) & "." & File_Type(rs.Fields(0))
                                 rs.Update
                            Else
                                rs.MoveNext
                            End If
                        rs.MoveNext
                    Wend
                End If
    
        rs.Close
        Set rs = Nothing

    4 - غيرت في التقرير الحقل ليكون حقل صورة

    جرب واعلمني بالنتيجة بارك الله فيك

    القاعدة.rar

    تحياتي

  3. تفضل اخي الكريم

        Dim X As String
        Dim X1() As String
        Dim i As Integer
        
        DoCmd.GoToRecord , , acFirst
        For i = 1 To Me.RecordsetClone.RecordCount
            X = Nz(DLookup("[سعر الوحدة] & '|' & [الوحدة] & '|'", "اكواد", "[كود الصنف]='" & Me.كود_الصنف & "'"), "|||")
            X1 = Split(X, "|")
            Me.وحدة = X1(1)
            Me.السعر = X1(0)
            DoCmd.GoToRecord , , acNext
        Next

    استعلام.rar

    تحياتي

    • Like 1
    • Thanks 1
  4. وعليكم السلام ورحمة االله وبركاته

    دهنا نحاول تتبع الخطأ خطوة خطوة

    1 -  عندما تقوم بتحويل الملف الى Accde على جهازك ونقله الى جهاز العميل هل يعمل بشكل جيد مع وجوج النسخة الكاملة

    اذا كانت الاجابة لا ؟ اعقتد ان المشكلة متعلقة باللغة وهي وجود اسماء لعتاصر التحكم باللغة العربية

    تحياتي

     

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

    تفضل اخي الكريم

        If DCount("*", "t2", "itemname='" & Me.itemname & "'" & " and masterid ='" & Me.masterid & "'") > 0 Then
            MsgBox "صنف مكرر", vbInformation, "تحذير"
            DoCmd.CancelEvent
        End If

    test7.rar

    44 دقائق مضت, طلب اكسس said:

    فيه خطأ في صياغة السؤال

    اخونا يسأل عن عدم تكرار الصنف في الفاتورة

    تحياتي

    • Like 1
  6. وعليكم السلام ورحمة الله وبركاته

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

    يتم انشاء الجداول المؤقتة عن طريق الكود او عن طريق استعلام

    من الكود

    CurrentDb.Execute "SELECT tbl1.textname INTO tbl_temp FROM tbl1;"

    من الاستعلام

    SELECT tbl1.textname INTO tbl_temp FROM tbl1;

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

    العملية شبيهة باستعلام الالحاق لكن هنا يتم انشاء الجدول اولا ثم الحاق البيانات

    في المثال السابق يوجد جدول tbl1 وهو الجدول الاصلي وبه خقل textname

    سيتم انشاء والحاق البيانات في الجدول المؤقت هو tbl_temp

    يمكن الاستفادة من الجدول في تقرير او نموذج وبعد الانتهاء من العملية نقوم بحذف الجدول الموئقت كالتالي

    DoCmd.DeleteObject acTable, "tbl_temp"

    العملية بسيطة وغير معقدة ولا تنسى عمل ضغط واصلاح لقاعدة البيانات عند الاغلاق لتعود مساحة قاعدة البيانات الى ما كانت عليه

    تحياتي

     

     

    • Thanks 1
  7. وهذه محاولة ارجو ان يكون هو المطلوب

        mySQL = "Select * From tblData ORDER BY ID"
         
        Set rst = CurrentDb.OpenRecordset(mySQL)
        rst.MoveLast: rst.MoveFirst
        
        For i = 1 To Int(rst.RecordCount / 5)
            Me.List1.AddItem rst!CustCode
            rst.MoveNext
        Next
            
         For i = (List1.ListCount + 1) To (List1.ListCount + Int(rst.RecordCount / 5))
            Me.List2.AddItem rst!CustCode
            rst.MoveNext
        Next
            
         For i = (List2.ListCount + 1) To (List2.ListCount + Int(rst.RecordCount / 5))
            Me.List3.AddItem rst!CustCode
            rst.MoveNext
        Next
            
         For i = (List3.ListCount + 1) To (List3.ListCount + Int(rst.RecordCount / 5))
            Me.List4.AddItem rst!CustCode
            rst.MoveNext
        Next
            
         For i = (List4.ListCount + 1) To (List4.ListCount + rst.RecordCount / 5)
            Me.List5.AddItem rst!CustCode
            rst.MoveNext
        Next
        
        rst.Close

    Test77.rar

    تحياتي

    • Like 6
  8. تفضل اخي الكريم

    Dim strDbFile As String
    Dim strPassword As String
    Dim strConnect As String
    '    تحديد اسم قاعدة البيانات
        strDbFile = CurrentProject.Path & Me.Compox.values
    '    كلمة مرور قاعدة البيانات
        strPassword = "123456789"
        strConnect = "MS Access;PWD=" & strPassword & ";DATABASE=" & strDbFile
    
        Dim tdf As dao.TableDef
        Set db = CurrentDb
    
        For Each tdf In db.TableDefs
            ' ignore system and temp tables
            If Not (tdf.Name Like "MSys*" Or tdf.Name Like "~*" Or tdf.Name Like "exl*") Then
                tdf.Connect = strConnect
                tdf.RefreshLink
            End If
        Next

    تحياتي

×
×
  • اضف...

Important Information