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

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

الخبراء
  • Posts

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

  • Days Won

    26

كل منشورات العضو محمد أبوعبدالله

  1. هذه هي المعادلة الموجودة في الملف الاصلي =Sum(IIf([iPage]=1 Or [iPage]=0 Or [iPage]=0 Or [iPage]=0;0;[iAmount])) المعيار iPage = 0 او iPage =1 ولو لاحظت لا يحتوي هذا الا على هذا المبلغ = 200 DATA1041-5.rar تحياتي
  2. تفصل اخي الكريم 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 تحياتي
  3. بداية عوداً حميداً اخي @محسن سرحان هذه محاولة ارجو ان تفيدك باذن الله 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 تحياتي
  4. ولا تترك عنصر تحكم او نموذج او تقرير ولا تكتب شىء في vba باي لغة غير اللاتينية / الانجليزية تحياتي
  5. جرب الكود التالي مع تغيير اسم النموذج وحقل المعيار DoCmd.OpenForm "frm!", , ,"LastName =" & Id تحياتي
  6. تفضل اخي الكريم 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 تحياتي
  7. وعليكم السلام ورحمة االله وبركاته دهنا نحاول تتبع الخطأ خطوة خطوة 1 - عندما تقوم بتحويل الملف الى Accde على جهازك ونقله الى جهاز العميل هل يعمل بشكل جيد مع وجوج النسخة الكاملة اذا كانت الاجابة لا ؟ اعقتد ان المشكلة متعلقة باللغة وهي وجود اسماء لعتاصر التحكم باللغة العربية تحياتي
  8. وعليكم السلام ورحمة الله وبركاته تفضل اخي الكريم تم الاستغناء عن كتابة الكود في مصدر تحكم Text20 وكتابته بعد البحث Me.Text20 = DSum("iAmount", "tbl_Items", "iPage <=1 " & " And [iBill_Number] = '" & Me.txtsearch & "'") DATA1041-5.rar تحياتي
  9. وعليكم السلام ورحمة الله وبركاته تفضل اخي الكريم If DCount("*", "t2", "itemname='" & Me.itemname & "'" & " and masterid ='" & Me.masterid & "'") > 0 Then MsgBox "صنف مكرر", vbInformation, "تحذير" DoCmd.CancelEvent End If test7.rar اخونا يسأل عن عدم تكرار الصنف في الفاتورة تحياتي
  10. وعليكم السلام ورحمة الله وبركاته الجداول المؤقتة تستخدم كما ذكرت لتخفيف قاعدة البيانات وذلك بتقليص حجمها يتم انشاء الجداول المؤقتة عن طريق الكود او عن طريق استعلام من الكود 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" العملية بسيطة وغير معقدة ولا تنسى عمل ضغط واصلاح لقاعدة البيانات عند الاغلاق لتعود مساحة قاعدة البيانات الى ما كانت عليه تحياتي
  11. وما هو حق السماء !!! ؟؟؟ الموضوع تم حله في الرابط التالي تحياتي
  12. السلام عليكم واعتقد انك تحتاج الى عمل قائمة مختصرة تفضل هذا الموضوع به الفائدة الكبيرة باذن الله تحياتي
  13. وهذه محاولة ارجو ان يكون هو المطلوب 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 تحياتي
  14. وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به استاذنا الفاضل @Eng.Qassim وله جزيل الشكر تفضل اخي الكريم DoCmd.OpenForm "Employees", , , "ID=" & Me.Text1.Value Sample.rar تحياتي
  15. وعليكم السلام ورحمة الله وبركاته جرب تنسيق الملف مسبقاً يالتسيقات اللازمة ثم قم بعمل تصدير ستجد الملف يحتفظ بالتنسيقات المعدة مسبقاً تحياتي
  16. تفضل اخي الكريم Dim ctl As Control Dim i As Integer For Each ctl In Me.Controls If ctl.ControlType = acTextBox Then i = i + Len(ctl & vbNullString) ctl.Value = Null End If Next ctl If i = 0 Then MsgBox "الحقول فارغة" Else MsgBox "تم تفريغ الحقول" End If تجياتي
  17. وعليكم السلام ورحمة الله وبركاته في الاستعلام نستخدم IIF وليس IF بهذا الشكل Expr1: IIf([Op_Type]="فاتورة مبيع";[amount12];0) وبالنسبة لباقي الاسئلة كيف تعرف الدائن من المدين تحياتي
  18. وعليكم السلام ورحمة الله وبركاته
  19. مرحبا اخي @الحلبي افتح برنامج اكسيس فارع ثم تابع كما بالصور تحياتي
  20. وهذا مثال لاحد الاخوة بالمنتدى سيفيدك باذن الله Auto ReLink.rar تحياتي
  21. تفضل اخي الكريم 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 تحياتي
  22. وعليكم السلام ورحمة الله وبركاته لم يتم عمل شىء في الملف 😒 تفضل اخي الكريم الملف الجديد بعد التعديل مؤشر.rar تحياتي
×
×
  • اضف...

Important Information