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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      138

    • Posts

      9,537


  2. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      117

    • Posts

      10,141


  3. AbuuAhmed

    AbuuAhmed

    الخبراء


    • نقاط

      102

    • Posts

      501


  4. Moosak

    Moosak

    الخبراء


    • نقاط

      87

    • Posts

      1,225


Popular Content

Showing content with the highest reputation since 30 ديس, 2022 in all areas

  1. السلام عليكم ورحمة الله تعالى وبركاته هذا المرفق نزولا على رغبة اخ كريم Filter Utility.accdb
    8 points
  2. تم إصلاح الخلل وقمت ببعض التجارب ولكن يحتاج إلى مزيد من التجارب من طرفكم أيضا. وتم إضافة ضبط عدد الأسطر في صفحة القائمة بعدد تكرار السجلات في الصفحة الواحدة وقد كان سابقا يتم مراعاة هذه الميزة إذا كان عدد الصفحات صفحة واحدة فقط. توزيع القرار لمدارس العراق_04.xlsm
    6 points
  3. السلام عليكم و رحمة الله غير لرقام بالمعادلة التى هى 1033 الى 1127 و تحل المشكلة ان شاء الله
    5 points
  4. أهلا @محمد احمد لطفى الشفرة التالية تفي بالغرض إن شاء الله.. Private Sub أمر0_Click() On Error GoTo ERR_CODES Dim HTML_FILE_NAME As String Dim HTML_TITLE As String Dim TABLE_NAME As String Dim SQL As String '-- ASSIGNING VALUES TO SQL STATMENT VARIABLES Const HTML_SPECIFICATION As String = " [HTML IMPORT;HDR=YES;] " HTML_FILE_NAME = CurrentProject.Path & "\" & "0125.HTML" '.. THE HTML FILE IS THE DATABASE HTML_TITLE = "0125" '.. THE HTML TABLE NAME IS THE HTML TITLE CREATE_TABLE_SQL: '-- ASSIGNING TABLE NAME USING INPUTBOX TABLE_NAME = InputBox(Err.Description & " Plase Enter New Table Name.", _ "New Table Name", , Me.WindowWidth / 2, Me.WindowHeight / 2) If Len(TABLE_NAME) = 0 Then GoTo EXIT_SUB End If '-- CREATE SQL STATMENT SQL = "" SQL = SQL & " SELECT * INTO " & TABLE_NAME SQL = SQL & " FROM " & HTML_TITLE SQL = SQL & " IN'" & HTML_FILE_NAME & "'" SQL = SQL & HTML_SPECIFICATION '-- EXECUTE SQL STATEMENT TO CREATE TABLE CurrentDb.Execute SQL Application.RefreshDatabaseWindow EXIT_SUB: Exit Sub ERR_CODES: If Err.Number = 3010 Then GoTo CREATE_TABLE_SQL Else MsgBox Err.Number & vbNewLine & Err.Description End If End Sub IMPORT_HTML_TABLE.zip
    5 points
  5. الأستاذ جعفر .. الهدايا تتوافد عليك كلها لك فقط من الأخ عزرئيل يعني بقية الأعضاء ما لهم نصيب . انبسط يا كبير .. يحق لك .. الله لنا .. اكيد الرجال يريد القرب منك .. سلف .. خطوبة ..
    5 points
  6. وهنا أيضا قمت بعمل كود لإضافة السجلات وترقيمها 🙂 وهذا هو الكود : Sub Add_2000_Record() Dim x As Long For x = 1 To 2000 CurrentDb.Execute "INSERT INTO Ta1 ( IDD ) VALUES (" & x & ");" Next End Sub إضافة2000سجل.rar
    5 points
  7. عليكم السلام ورحمة الله وبركاته تفضل أخي الكريم 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
    5 points
  8. السلام عليكم ورحمة الله وبركاته منذ مدة وأنا أحاول بشتى الطرق والوسائل لأتعلم والحمد لله تعلمت من هذا المنتدي الكثير هو برنامج بالأساس مخصص للمطابع وتسهيل مهامهم وتيسير أمور حساباتهم في مختلف مجالات الطباعة : الكتب والمجلات والطباعة ديجيتال أو تسيير الفواتير وحتى محلات الحرفيين الذين يستخدمون ماكينات الليزر لقص الخشب وغيرهم ...... الخ سادتي الكرام اخواني الأعزاء أضع بين أيديكم هذا البرنامج رغم أنه في البداية وغير مكتمل إلا أنني وضعت فيه كثير مما تعلمته من هذا المنتدى العملاق وخاصة الأساتذة : شوقي ربيع وضاحي الغريب وخبور وعبد الله باقشير وغيرهم كثير حتى لا انسى أحد هذا البرنامج الذي آمل من أساتذتنا الكرام ان ينقحوه ويعينوننا في انجازه واخراجه بحلة تليق بمقام هذا الصرح مازال جزء الفواتير والكثير الا أنني آثرت ان ارفعه لنتعاون في اتمامه وهو مفتوح المصدر حتى لا اطيل عليكم جربو البرنامج واحكموا بانفسكم ولا تبخلوا علينا بالنصح والتوجيه والمشاركة بالتعديلات اترككم مع البرنامج اسم المستخدم : Tarek كلمة المرور : 23 عذرا الملف كبير نوعا ما لا اعرف السبب لذا رفعة على قوقل درايف ان كان هناك حل آخر نورونا اساتذتي الرابط بالاسفل مطبعتي تم رفع الملف في المنتدي بعد تصغير مساحته من 35 ميجا الي 2.8 ميجا هنا
    5 points
  9. وعليكم السلام ورحمة الله تعالى وبركاته تفضل اخي Private Sub Worksheet_Activate() Set ws = Sheet1 StartRow = 7 'اول صف EndRow = 34 ' اخر صف ColNum = 2 'رقم عمود الشرط Application.ScreenUpdating = False 'بما انني لاحظت انك واضع حماية للشيت قمنا باضافة فك الحماية لتنفيد الكود ثم ارجاعها Sheet2.Unprotect ' في حالة قمت بالغاءها قم بالغاء تفعيل هدا السطر For i = StartRow To EndRow If ws.Cells(i, ColNum).Value = "" Then Cells(i, ColNum).EntireRow.Hidden = True Else Cells(i, ColNum).EntireRow.Hidden = False End If Next i Sheet2.Protect ' وهنا Application.ScreenUpdating = True End Sub بكج الافراد.xlsm
    5 points
  10. السلام عليكم ورحمة الله حل بكود بسيط مع نطاقات بالتسمية... xxzz (3).xlsm
    5 points
  11. وهذا كود لإنهاء مهمة أكسس، من جلبي وتصرفي: Sub Kill_msAccess() Dim oServ As Object Dim cProc As Variant Dim oProc As Object Set oServ = GetObject("winmgmts:") Set cProc = oServ.ExecQuery("Select * from Win32_Process") For Each oProc In cProc 'Rename MSACCESS.EXE in the line below with the process that you need to Terminate. 'NOTE: It is 'case sensitive If oProc.Name = "MSACCESS.EXE" Then MsgBox "KILL" 'used to display a message for testing pur oProc.Terminate 'kill exe End If Next End Sub
    5 points
  12. أصدقائي واساتذتي الرائعون .. رسالة شكر وعرفان وتقدير أهديها لكم لوقوفكم بجانبي دوماً، فأنتم في القلب، و تتسابق الكلمات وتتزاحم العبارات لتنظم كلمات الشكر الذي لا يستحقه إلّا أنتم، إليكم يا من كان له قدم السبق في ركب العلم والتعليم، إليكم يا من بذلتم ولم تنتظرون العطاء. بارك الله فيكم وجعلها في ميزان حسناتكم
    4 points
  13. السلام عليكم 🙂 كود اخوي ابو بسملة = تفتح قاعدة بيانات خارجية ، وتغير اسم النموذج الذي يفتح البرنامج الخارجي ، بينما كودي انا = تفتح قاعدة بيانات خارجية ، وتفتح النموذج الذي تريد 🙂 قمت بتجربة برنامجي على 3 كمبيوترات: وندوز ، اكسس 2010 32بت ، وندوز 7 ، اكسس 2019 64بت ، وندوز 10 ، اكسس 365 64بت ، واشتغل تمام : . والكود : Option Compare Database Option Explicit Dim appAccess As Object Dim DB_Path As String ' Private Sub cmd_Open_frm_1_Click() On Error GoTo err_cmd_Open_frm_1_Click 'if the Remote Application/Form is open, close it first appAccess.DoCmd.Quit Set appAccess = CreateObject("Access.Application") DB_Path = CurrentProject.Path & "\a.accdb" appAccess.OpenCurrentDatabase (DB_Path) appAccess.DoCmd.OpenForm "frm_1" appAccess.Visible = True appAccess.UserControl = True Set appAccess = Nothing appAccess.DoCmd.Quit Exit_cmd_Open_frm_1_Click: Exit Sub err_cmd_Open_frm_1_Click: If Err.Number = 91 Or Err.Number = 462 Then 'the application is NOT open, ignore the error Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_cmd_Open_frm_1_Click End If End Sub Private Sub cmd_Open_frm_2_Click() On Error GoTo err_cmd_Open_frm_2_Click 'if the Remote Application/Form is open, close it first appAccess.DoCmd.Quit Set appAccess = CreateObject("Access.Application") DB_Path = CurrentProject.Path & "\a.accdb" appAccess.OpenCurrentDatabase (DB_Path) appAccess.DoCmd.OpenForm "frm_2" appAccess.Visible = True appAccess.UserControl = True 'Set appAccess = Nothing Exit_cmd_Open_frm_2_Click: Exit Sub err_cmd_Open_frm_2_Click: If Err.Number = 91 Or Err.Number = 462 Then 'the application is NOT open, ignore the error Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_cmd_Open_frm_2_Click End If End Sub Private Sub cmd_quit_Click() On Error GoTo err_cmd_quit_Click GetObject(DB_Path).Application.Quit Exit_cmd_quit_Click: Exit Sub err_cmd_quit_Click: MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_cmd_quit_Click End Sub جعفر Open Form another DB_jj.zip
    4 points
  14. اريدك تتمعن في طريقة عرض وتنسيق ومحاذاة الاكسس لبيانات الحقول ، وهو نفس التنسيق سواء للجداول او الاستعلام او النماذج او التقرير في الصورة التالية ، ترى جزء من بيانات الجدول ، وتحته 3 طرق لعرض التاريخ في الاستعلام : . من تنسيق/محاذاة القيم في الجدول ستعرف محاذاة التاريخ الصحيحة (نفس الشئ ينطبق على حقل النص او التاريخ او الرقم) ، فالمفروض تعرف اي الطرق الثلاثة من الاستعلام صحيحة 🙂 . . جعفر New Microsoft Access Database.zip
    4 points
  15. السلام عليكم و رحمة الله استخدم المعادلة التالية =INDEX($B$2:$K$8;MATCH($B$15;$A$2:$A$8;0);MATCH($C$15;$B$1:$K$1;0))
    4 points
  16. @saad 77 @saad alyousif @فوزى فوزى @مصطفى محمود مصطفى @mohameddeela @فارس حسن3
    4 points
  17. السلام عليكم ورحمة الله وبركاته اسعد الله اوقاتكم جميعا بالنسبة لبناء برنامج مشتريات ومبيعات فأولا يجب تسميته برنامج محاسبة بحيث لا يمكن ان تحصل على مبيعات والمشتريات بدون كامل ارتباطهم باخواتهم في المحاسبة لذلك سأسرد لك اهم الجداول التي تحتاجها لبناء قاعدة بيانات محاسبية 1- جدول شجرة الحسابات وهو جدول تضع فيه اسماء الحسابات التي سوف تستخدمها في البيع والشراء والمصاريف هذا نموذج ادخال على شجرة الحسابات وهذه صورة عن الجدول الحسابات 2- جدول المواد: هو جدول تضع فيه الاصناف التي تستخدمها في بيع او الشراء ويسمى شجرة المواد وهذا جدول المواد 3- جدول العملات اذا كنت تحتاج استخدام اكثر من عملة 4- جدول المستودعات 5- جدول مراكز الكلفة : وهو جدول يستخدم في القيود لحساب الكلفة وضبط المصاريف على المراكز (قد لا تحتاجه في عملك) 6- جدول المستخدمين هذه الجداول هي جداول التعريف الاساسية لاي برنامج محاسبة في مشاركة اخرى ساضع لك جداول الادخال
    4 points
  18. الحمد لله تعالى فى السراء وقى الضراء الحمد لله على كل حال . ان العين لتدمع وان القلب ليحزن ولا نقول الا ما يرضى ربنا تعالى عز وجل . لله ما أعطى ولله ما أخذ انا لله وانا اليه راجعون اللهم اجرنا فى مصيببتنا وارزقنا الصبر برحمتك يارب العالمين . رب اغفر لي ولوالدى وللمؤمنين والمؤمنات والمسلمين والمسلمات الأحياء منهم والأموات .
    4 points
  19. السلام عليكم 🙂 في زمن Dos والوندوز قبل 95 ، جميع البرامج كانت ملتزمة بأن طول اسم البرنامج/الملف لا يتجاوز 8 احرف ، وصيغة البرنامج/الملف هي 3 احرف ، لذا فهي معروفة 8.3 او الاسم القصير Short FileName 🙂 في هذه الايام ، 99% من البرامج تتعامل مع Unicode (الحروف الغير انجليزية) ، ولكن لا تزال هناك بعض البرامج اللي لا تتعامل مع Unicode ، مما يجعلنا لا نستطيع استعمالها اذا كان اسم الملف او المجلد مكتوب باللغة العربية ، هذا المرفق مثال على ذلك !! حتى نستطيع التعامل مع مسميات الملفات و المجلدات باللغة العربية ، مع البرامج التي لا تدعم اللغة العربية ، يمكننا ان نغيّر صيغة الملف/المسار الى صيغة 8.3 بإستعمال هذه الدالة ، وسيعمل البرنامج : Function get8_3FullFileName(F_or_F As Integer, ByVal sFullFileName As String) As String ' ' Convert the normal path to the old DOS 8.3 path ' this solves the problem of spaces in the path ' and reading Unicode names ' ' F_or_F : File or Folder ' 1= File ' 2= Folder ' Dim FSO As Object: Set FSO = CreateObject("Scripting.FileSystemObject") If F_or_F = 1 Then get8_3FullFileName = FSO.GetFile(sFullFileName).ShortPath Else get8_3FullFileName = FSO.GetFolder(sFullFileName).ShortPath End If Debug.Print "Original File Path: " & sFullFileName Debug.Print "8.3 File Path: " & get8_3FullFileName End Function . نناديها بإرسال المسار اليها ، هكذا : a_FILE = get8_3FullFileName(1, "D:\1Jaffer_Work\1Officena.net\Combine_PDF_Files_2\ملف1" & "\" & "a.pdf") او a_FILE = get8_3FullFileName(1, Application.CurrentProject.Path & "\" & "ملف1" & "\" & "a.pdf") النتيجة D:\1JAFFE~1\1OFFIC~1.NET\COMBIN~1\10DFB~1\a.pdf او اصل المسار D:\1Jaffer_Work\Samples\sound files\sound files\عمل رائع.WAV والنتيجة D:\1JAFFE~1\Samples\SOUNDF~1\SOUNDF~1\FE9C~1.WAV . جعفر
    4 points
  20. العفو اخي الفاضل لقد حاولت تبسيط الكود الاول ليتم فهمه ربما تحتاج يوما ما للتعديل تفضل اخي اليك كود اخر يقوم بنفس المهمة لاكن حاول تجنب وضع علامة / بين الكلمات يمكنك استبدالها ب علامة (-) مثلا وسوف يشتغل معك الكود بكفاءة عالية بالتوفيق Sub Test_MH3() Dim a, b Dim I As Long, II As Long, LR As Long Dim j As Integer Dim ObjDic As Object Set ObjDic = CreateObject("Scripting.Dictionary") Dim K, T LR = Cells(Rows.Count, "A").End(3).Row a = Range("A2:D" & LR) For I = LBound(a, 1) To UBound(a, 1) ObjDic(a(I, 1)) = a(I, 2) & "/" & a(I, 3) & "/" & a(I, 4) Next I LR = Cells(Rows.Count, "e").End(3).Row b = Range("E2:E" & LR) ReDim Preserve b(LBound(b, 1) To UBound(b, 1), 1 To 5) For I = LBound(b, 1) To UBound(b, 1) For Each K In ObjDic.keys If K Like "*" & b(I, 1) & "*" Then T = Split(ObjDic(K), "/") b(I, 1) = K For II = 0 To UBound(T, 1) b(I, 2 + II) = T(II) Next II Exit For End If Next K Next I Cells(2, "F").Resize(UBound(b, 1), 4) = b End Sub نسخة من نسخة officene _3.xlsm
    4 points
  21. السلام عليكم ورحمة الله محاولة في الملف... Book1.xlsm
    4 points
  22. تفضل طريقة بسيطة جدا اختر التاريخ من مربعات التحرير ،،، او اكتب بعض التاريخ وسوف يقوم مربع التحرير بعرض التواريخ المطابقة البحث بين وقتين2.accdb
    4 points
  23. السلام عليكم و رحمة الله ضع المعادلة التالية فى عمود الاسماء =IFERROR(INDEX(ورقة1!$B$2:$C$12;SMALL(IF((ورقة1!$C$2:$C$12>=$F$1)*(ورقة1!$C$2:$C$12<=$E$1)>0;ROW(ورقة1!$C$2:$C$12));ROW(A1))-1;1);"") ثم اضغط CTRL+ SHIFT + ENTER و اسحب نزولا حتى آخر خلية كرر نفس المعادلة فى عمود التاريخ و غير الرقم الاخير فى المعادلة و هو 1 الى 2
    4 points
  24. السلام عليكم اقتراح في الملف المرفق... حساب مدة اخر ترقية.xlsx
    4 points
  25. السلام عليكم 🙂 اخي الفاضل @Ahmed_J مبروك علينا ترقيتك الى درجة خبير ، تستاهل 🙂 ولازلنا نبحث عن خبراء جدد 🙂 جعفر
    3 points
  26. شكرا على هذه المعلومة اخوي موسى 🙂 انا لازلت على ابو كلتش ، من التنسيق اخلص شغلي ، متعود على طريقة العمل مال الاصدارات القديمة مال اكسس 🙂 جعفر
    3 points
  27. السلام عليكم هدية بسيطة جدا لكم وهو رد جميل كل من ساعدني القاعده ربما تنيرك بفكرة ما وليس شرط استخدامه نواة القاعدة 64بت تم بناؤها بإصدار اوفيس 2016 اللغة الإداريه (العربية) البرنامج بسيط واكواده بسيطة ويعتبر من اوائل البرامج اللي صممتها وشغاله تمام بإذن الله واعدكم بتطويره في اقرب وقت واعادة رفعه وسأخذ ردودكم واقتراحاتكم بعين الاعتبار البرنامج يستهدف لمن لدية مكتب عقار ويريد تنظيم العقود إلكترونيا يمكنك من خلاله تسجيل عقود إيجار العملاء بكافة تفاصيله وكذلك تسجيل الدفعات برنامج إدارة الأملاك والعقارات برنامج لإدارة العقارات والملاك و عقود التأجير والتقسيط بشكل تفصيلي يمكنك طباعة البيانات الأساسية والدفعات لعرضها للعميل النسخة هي النسخة المختصرة بحيث يتم فيها تسجيل البيانات الأساسية للعقار وبيان الدفعات حيث النسخة التفصيلية نقوم بإنشائها الأن يمكنك البحث بشكل سريع عن أي رقم عقد ليعرض لك بيانات العقد والدفعات البرنامج يقوم بتنبيهك في حال انتهاء الايجار او باقي على انتهاء العقد خلال شهر او اربع شهور او عشر أيام ----- بعض الصور تأجير لمتابعة العقود والايجارات.rar
    3 points
  28. جرب المرفق حالة الطالب ناجح - برنامج علاجي 002.xlsx
    3 points
  29. سأحاول الليلة إن شاء الله فإن وفقت في الحل رفعته لك. مع المعذرة .. حققت لك جزء من طلبك واسمح لي بالتوقف عند هذه النقطة موفقين. التكرار في اللجان_04.xlsm
    3 points
  30. وطريقة اخرى للنسخ واللصق ، في الاكسل مثلا ، نظم الحقول بنفس ترتيب الحقول في الاكسس ، او في الاكسس نظم الحقول بنفس ترتيبها في الاكسل (يعني امسك الحقل و خليه يزحف يمين ويسار) ، ومو لازم جميع الحقول تكون متساوية في الاكسل والاكسس ، في الاكسل اعمل نسخ للاعمدة المطلوبة ، وفي الاكسس اختار في سجل جديد (مكان وجود النجمة) ، ثم اختار الحقول المتسلسلة من الاكسس (يعني مو كل الحقول) ، ثم الصق 🙂 وعلشان ترتيب الحقول في الجدول ما تخترب عليك ، اغلق الجدول بدون ان تعمل له حفظ : . جعفر
    3 points
  31. للعلم ، اذا كان الاستعلام مصدر بيانات النموذج ،فالنموذج يحترم الفرز الذي يتم في الاستعلام ، ويتم عرض بيانات النموذج على اساسه ، بينما التقرير لا يحترم فرز الاستعلام ، ويجب استعمال زر تجميع وفرز: . جعفر
    3 points
  32. مرحبتين راعي بلادي 🙂 1 - هذي ما تستوي في الجدول لذلك سويتلك استعلام اسمه Byanat_AlAdaa_Q .. والسبب عدم وجود دالة DateAdd اللي تضيف عدد المدة بالأشهر في الحقل المحسوب بالجدول . 2 - تم الربط وإضافة حقل ID لجدول البيانات الشهرية من باب التنظيم. 3- تم عمله بجعل الفورمات يساوي -0 . 4- النموذج مبني بطريقة غير صحيحة .. المفروض جدول البيانات الشهرية يكون نموذج فرعي لنموذج بيانات الأعضاء .. والبحث يكون في بيانات الأعضاء .. سويته لك بذي الطريقة : ملاحظة أخيرة صاحبي : حاول تسمية جميع الكائنات ( الجداول- الاستعلامات - النماذج _ ووووووو) بالانجليزي دائما .. 🙂 بيانات الأعضاء.accdb
    3 points
  33. السلام عليكم ورحمه الله وبركاته وبها نبدأ اي موضوع يمكنك ذلك عن طريق كود vba كليك يمين على الصفحه (نسخة الزبون) والضغط على view code ثم نسخ هذا الكود ولصقه في حدث الشيت كما هو ولا تنسي يتم حفظ الملف بصيغه تقبل الماكرو xlsm او xlsb Private Sub Worksheet_Activate() Dim r As Range, i As Long Cells.EntireRow.Hidden = False For i = 7 To 34 If Cells(i, 2) = "" Then If r Is Nothing Then Set r = Cells(i, 2) Else Set r = Union(r, Cells(i, 2)) End If End If Next i If Not r Is Nothing Then r.EntireRow.Hidden = True End Sub
    3 points
  34. 3 points
  35. اعتقد ولا أجزم بأن هذه الجزئية تمت اضافتها من قبل موقع الاستضافة مؤخراً لتخفيف الضغط على السيرفر تخيل ان كل شخص يفتح الاتصال مع قاعدة البيانات ويترك الاتصال مفتوح بدون العمل كم مقدار الضغط الذي سيتعرض له السيرفر لذلك وضعوا هذه البرمجية لفصل الاتصال أعيد وأكرر لا أجزم بهذا الكلام بعد مشاهدة رابط الموضوع اللي وضعه استاذنا ابو خليل صار عندي تصور عن المطلوب سؤالك هذا غير مجرى الموضوع 180 درجة سأعطيك رايي كمستخدم لمواقع الاستضافة لقواعد بيانات SQl Server لمدة 6 اشهر 1 - طريقة ربط الاكسس مع جداول قواعد بيانات Sql server عن طريق ODBC أو ما يعرف بالاتصال المتصل بحيث يتم انزال نسخه مرتبطه من الجداول في قاعدة بيانات الاكسس وعند فتح الجدول يبقى الاتصال مفتوح دون انقطاع هذه الطريقة غير مجديه فعند وصولك لعدد 500 سجل ومحاولة عمل استعلام فرز وعمليات حسابية او جلب بيانات مرتبطه ستكون هذه المعالجة للبيانات بطيئة جدا جدا اضف الى ذلك عند فتح الاستعلام من خلال نموذج وعمل بعض الاوامر البرمجية ستصاب بالملل لأن جلب البيانات للنموذج في حالة كان لديك عدد السجلات المذكورة سيأخذ منك وقت لايقل عن 3 دقائق كحد أدنى ربما يخطر لك سؤال هنا وتقول ان هذا بسبب موقع الاستضافة بناء على المساحة التي قمت بشرائها والسرعه ...... ألخ سأجيب واقول لك جربت اكثر من موقع ومن ضمنها مساحه على Azure وهذا من أفضل المواقع للاستضافة إن لم يكن أقواها على الاطلاق بناءً على نوع الاشتراك عند تجربته تحسن الاتصال نوعا ما وكان الأمر شبه مقبول ولكن قيمة الاشتراك في هذه السيرفرات مكلف جدا طبعا الأمر يختلف تماما عند عمل سيرفر على جهازك او من خلال شبكه داخلية ستجد الأوامر سريعه جدا بناء على مواصفات الجهاز نأتي للأمر الأخر 2- الاتصال بقواعد بيانات Sql Server في مواقع الاستضافة بتقنية Dbset أو ما يعرف بالاتصال المنفصل ان شاء الله يكون المصطلح صحيح بحيث تقوم بتعريف الاتصال والمتغيرات وتكتب جمل الاتصال بالجدول او stored procedure أو الاستعلام تفتح الاتصال وتجلب او ترسل البيانات ثم تقوم بإغلاق الاتصال بدون أن يكون عندك جداول حيث يتم تخزين البيانات في الذاكرة وتقوم باستعراضها عن طريق النموذج او تقوم بالاضافة او التعديل والحذف ثم تعيد ارسالها الى قاعدة البيانات مباشرة للجدول او عن طريق stored procedure هذه الطريقة مشابه بحد كبير الى طريقة برامج visual basic هذه الطريقة جدا ممتازة وسريعه جدا إذا كان بناء البرنامج صحيح وكل شي تمام ولكن تحتاج جهد وعمل كبير وكثير يعاب على هذه الطريقة عدم استطاعتك بناء بعض التقارير عن طريقها حيث ستحتاج الى تصميم جداول مؤقته ثم تجلب البيانات وتخزنها بالجدول وبعد ذلك تستطيع بناء التقرير وهذا هو موضوع كود الاتصال الذي وضعته لك أتمنى أكون قدرت افيدك بشي عن الموضوع
    3 points
  36. استكمالا لما قام به استاذنا موسى تفضل f6-1.rar
    3 points
  37. https://drive.google.com/file/d/18lvYz7O4HSlY3YoaebqziLCub-ttEuRR/view?usp=drivesdk البرنامج في الرابط اعلاة تم تحميل البرنامج على درايف 1010089574_.zip
    3 points
  38. ثم ماذا؟ ، أنا عملت خطواتك ولم تفتح مع الأكواد!!
    3 points
  39. تفضل اخي هذا مثال لطلبك Sub TEST_mh5() Dim ws As Worksheet Dim LR As Long Set ws = Worksheets("sheet2") Application.ScreenUpdating = False LR = ws.Range("B" & Rows.Count).End(xlUp).Row With ws.Range("c2:c" & LR) .Formula = "=VLOOKUP(""*""&b2&""*"",sheet1!A:E,1,0)" .Value = .Value With ws.Range("d2:d" & LR) .Formula = "=VLOOKUP(""*""&b2&""*"",sheet1!A:E,2,0)" .Value = .Value With ws.Range("E2:E" & LR) .Formula = "=VLOOKUP(""*""&b2&""*"",sheet1!A:E,3,0)" .Value = .Value With ws.Range("F2:F" & LR) .Formula = "=VLOOKUP(""*""&b2&""*"",sheet1!A:E,4,0)" .Value = .Value With ws.Range("G2:G" & LR) .Formula = "=VLOOKUP(""*""&b2&""*"",sheet1!A:E,5,0)" .Value = .Value End With End With End With End With End With End Sub جلب البيانات 2.xlsm
    3 points
  40. وعليكم السلام 🙂 في ذيل النموذج ، في حقول المجاميع ، استخد التالي كمصدر لبيانات الحقل: مجموع نعم =Sum(IIf([mtwajd]=-1,1,0)) مجموع لا =Sum(IIf([mtwajd]=0,1,0)) جعفر
    3 points
  41. وعليكم السلام 🙂 في الواتساب ، للإنتقال للسطر التالي ، لا تستعمل vbcrlf او chr(10) او chr(13) ، وانما استعمل "%0a" وكذلك تم ترجمة هذه الجزئية من موقع الواتساب: https://faq.whatsapp.com/539178204879377/?locale=en_US يتيح لك WhatsApp تنسيق النص داخل رسائلك. يرجى ملاحظة أنه لا يوجد خيار لتعطيل هذه الميزة. مائل لجعل رسالتك مائلة ، ضع شرطة سفلية على جانبي النص: _نص_ بالخط العريض لجعل رسالتك غامقة ، ضع علامة النجمة على جانبي النص: *نص* يتوسطه خط لتخطي رسالتك ، ضع علامة تلدة على جانبي النص: ~ نص ~ مونوسبيس لفرد رسالتك ، ضع ثلاث علامات خلفية على جانبي النص: ```نص``` ملحوظة: بدلاً من ذلك ، يمكنك استخدام الاختصارات على Android و iPhone. Android: اضغط مع الاستمرار على النص الذي تدخله في حقل النص ، ثم اختر غامق أو مائل أو المزيد. انقر على "المزيد" لاختيار خط يتوسطه خط أو مسافة أحادية. iPhone: اضغط على النص الذي تدخله في حقل النص> تحديد أو تحديد الكل> B_I_U. ثم اختر Bold أو Italic أو Strikethrough أو Monospace. جعفر
    3 points
  42. وجزاكم بمثل ما دعوتم ستكون الأرقام المفقودة متسلسلة حسب المدى الذي اخترته باستخدام المعادلة والضغط على Ctrl+Shift+Enter =IFERROR( SMALL(IF(ISNA(MATCH(ROW(C$3:C$17);C$3:C$17;0));ROW(C$3:C$17));ROW(A1));"") المصنف1 (1).xlsx
    3 points
  43. مشاركة مع استاذنا ابو خليل ممكن عملها بالكود بدون الحاجة الى استعلام في حدث عند النقر لزر الامر بحث نضع الامر التالي ⬇️ Dim strWhere As String strWhere = "" strWhere = "[username] like '*" & [List15] & "*'" strWhere = strWhere & " and " & "[xdate] between " & Format(Nz(start, "01/01/1900"), "\#mm\/dd\/yyyy hh\:nn\:ss\#") & _ " and " & Format(Nz(ind, "01/01/2100"), "\#mm\/dd\/yyyy hh\:nn\:ss\#") & "" Me.Filter = strWhere Me.FilterOn = True ممكن الاستغناء عن طلاسم التنسيق للحقل باستخدام دالة للاخ جعفر ولكن مالي مزاج ابحث عنها في جميع الاحوال طريقة الاستعلام اسهل وانصح بها اخيرا قالت العرب "الصمت حكمه وقليل فاعله" تحياتي
    3 points
  44. تفضل أخي ها احدمحاولات , يعرض لك رسالة سنين مفقودة test2023_2.accdb
    3 points
  45. وعليكم السلام ورحمة الله تعالى وبركاته العد.xlsx
    3 points
  46. السلام عليكم ورحمة الله بما أن القوائم في كل الشيتات: "قائمة ب"، "غياب ب"، "قوائم لعب"، "استلام طفل حضانة" ، "قوائم بالميلاد"، تستمد عناصرها من القائمة الموجودة في شيت "بيان ب" فقد قمت بإضافة كود الترتيب حسب العمودين D (عمود المجموعات) و B (عمود الأسماء) بهذا الترتيب... وضعت هذا الكود داخل كود "استبدال الهمزات والتاء" ويكون تنفيذه مباشرة بعد الاستبدالات... ملاحظة: أضفت بعض النطاقات بالتسمية لأجل الترتيب (Rng_2، Rng_1، Rng)... بالنسبة للإحصائيات فقد أضفت المعادلات اللازمة لذلك في الجدول في شيت "إحصاء ب"... واعذرني على التأخير لأني بدأت العمل على الملف بالأمس (كما وعدتك) غير أني نسيت جهازي عند مغادرة مقر عملي... أخوك بن علية حاجي برنامج أبو عزيز تحديث رواق.rar
    3 points
  47. جرب محاولتي: حساب ضريبة كسب العمل_03.xlsx
    3 points
  48. السلام عليكم ورحمة الله بمعادلة صفيف تم عمل المطلوب في الدالة MATCH... دون اللجوء لعمود مساعد... xxzz (1).xlsm
    3 points
×
×
  • اضف...

Important Information