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

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

  1. omar elhosseini

    omar elhosseini

    المشرفين السابقين


    • نقاط

      13

    • Posts

      1,950


  2. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      9

    • Posts

      1,681


  3. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      4

    • Posts

      6,818


  4. أ / محمد صالح

    أ / محمد صالح

    أوفيسنا


    • نقاط

      3

    • Posts

      4,431


Popular Content

Showing content with the highest reputation on 29 أكت, 2021 in all areas

  1. ابو الحسن حدد اين تريد الزيادة هل تقصد فقط في الجدول او النماذج بعد الإطلاع على المرفق انصحك بأن تقوم بتغيير التكنييك في ما يخص الاستخدام فمثلا مثل هذا النموذج التصميم غير منطقي فلو احتجت مستقبلا زيادة المخازن فبهذا النموذج لن تستطيع التقدم الا بتعديلات كبرى يجب ان تقوم بالتفكير بطريقة عرض تخدمك مستقبلا اما في ما يخص اضافة المخازن في جدول المخازن تفضل استخدم الحلقة التكرارية Dim db As DAO.Database Dim sSQL As String Set db = CurrentDb For i = 8 To 25 sSQL = "INSERT INTO tbl_Stores (Auto_Date , iStore_Name) " & _ " VALUES('" & Now & "', '" & "مخزن" & i & "')" db.Execute sSQL Next MsgBox "تم انشاء المخازن بنجاح", vbInformation + vbMsgBoxRight, "تأكيد" حدد النماذج التي تحتاج الى تعديلها و التقارير و ستجدني انشاء الله في خدمتك
    2 points
  2. ابو زهرة موضوعك جدا سهل و بسيط للغاية تستطيع تحديث البرنامج بالكامل لدى جميع المستخدمين بإستخدام لوحة الأوامر CMD سويت لك هذا المثال للتوضيح و تقدر تضيف جدول فيه اسماء المستخدمين الي قام بالتحديث يصير ما تظهر عنده الرسالة او التنبيه اتفضل هذا المثال الفكرة بإختصار بعد ما تخلص من جميع تعديلاتك تقوم تنشئ نسخة مماثلة من آخر التعديلات يعني نسخة احتياطية و تحطها في مجلد خاص بالتحديثات بحيث يدخل المستخدم و ياخذ نسخة من التحديث و يستبدل النسخة الي عنده بالنسخة المحدثة طبعا كل هذا ما راح يتم بشكل مباشر من المستخدم فقط بالكود سيتم انشاء ملف نصي يتحوي على جميع هذه الأوامر و سيتم ارساله لشاشة الأوامر CMD Pro.zip
    2 points
  3. يمكنك استعمال هذا الإجراء Sub mas() lr = Cells(Rows.Count, 3).End(3).Row With Range("d4:d" & lr) .Formula = "=IFERROR(VLOOKUP(C4,H$4:I$27,2,0),"""")" .Value = .Value End With MsgBox "Done by mr-mas.com" End Sub وربطه يزر أو في حدث التغيير بالتوفيق
    2 points
  4. السلا عليكم ورحمة الله وبركاته عندي قاعدة بيانات موضفين سويت مجلد لحفظ صور مستندات الموضفين بحيث يحفظ الصورة في مجلد الموضف الي فاتح سجله الي سواه د.كاف يار الله يبيض وجهه ويكتبله الاجر المطلوب مجلد حفظ الصور الي هو برقم ملف الموضف يكون داخلة اقسام باسم (اوراق عامة) (الإجازات) (الدورات) (الشهادات) بحيث اذا جيت حفظ صورة يسالني باي الاقسام احفظها ولكم جزيل الشكر s.rar
    1 point
  5. استاذنا العزيز @الحلبي حتى لو كان المصدر استعلام انظر للمرفق العدد.accdb
    1 point
  6. So simple. remove the line of clearcontents sh.Range("A7:I" & Rows.Count).ClearContents then specify the destination by detecting the last row. I will leave that for you. Don't wait others to do everything for you
    1 point
  7. ضع الكود الاتى فى موديول Public Function DoMouseWheel(frm As Form, lngCount As Long) As Integer Dim strMsg As String If (Val(SysCmd(acSysCmdAccessVer)) >= 12#) And (frm.CurrentView = 1) And (lngCount <> 0&) Then RunCommand acCmdSaveRecord RunCommand IIf(lngCount < 0&, acCmdRecordsGoToPrevious, acCmdRecordsGoToNext) DoMouseWheel = Sgn(lngCount) End If DoCmd.CancelEvent Response = False End Function ثم فى النموذج فى حدث On Mouse Wheel ضع السطر التالى Call DoMouseWheel(Me, Count)
    1 point
  8. Sub Test() Dim a, ws As Worksheet, sh As Worksheet Application.ScreenUpdating = False Set ws = ThisWorkbook.Worksheets(1) Set sh = ThisWorkbook.Worksheets(2) a = ws.Range("B6:M" & ws.Cells(Rows.Count, "C").End(xlUp).Row).Value a = Application.Index(a, Evaluate("ROW(1:" & UBound(a, 1) & ")"), [{1,2,3,6,9,10,11,12}]) sh.Range("A7:I" & Rows.Count).ClearContents sh.Range("A7").Resize(UBound(a, 1), UBound(a, 2)).Value = a sh.Range("I7").Resize(UBound(a, 1)).Value = ws.Range("C4").Value Application.ScreenUpdating = True End Sub
    1 point
  9. فكرة عمل فرز متقدم - Smart Sort 1 - الكود داخل المديول 2 - استدعاء الكود من خلال السطر التالى مع تغيير الـ *** الى اسم عنصر التحكم الذى يدل على الحقل المراد عمل الفرز له SmrtSort "***" .. '-----------------------------------------------------------' ' _ +-----------officena-----------+ _ ' ' /o) | ||||| | (o\ ' ' / / | @(~O^O~)@ | \ \ ' ' ( (_ | _ ----oOo--Moh--oOo----- _ | _) ) ' ' ((\ \) +/o)----------3ssam---------(o\+ (/ /)) ' ' (\\\ \_/ / \ \_/ ///) ' ' \ / \ / ' ' \____/________Mohammed Essam________\____/ ' '--28-10-2021-----------------------------------------------' Option Compare Database Option Explicit Public bt As Byte Function SmrtSort(ByVal ObjectName As String) DoCmd.GoToControl ObjectName If bt = 0 Then DoCmd.RunCommand acCmdSortAscending bt = 1 ElseIf bt = 1 Then DoCmd.RunCommand acCmdSortDescending bt = 2 ElseIf bt = 2 Then DoCmd.RunCommand acCmdRemoveAllSorts bt = 0 End If End Function
    1 point
  10. وعليكم السلام ورحمة الله وبركاته تفضل اخي الكريم =Sum(IIf((Nz([rased])-Nz([reorder]))<0;1;0)) العدد.rar تحياتي
    1 point
  11. وعليكم السلام .. يتم التحكم بتلك الخاصية من ال Border style للنموذج اجعله thin or Dialog or none
    1 point
  12. السلام عليكم عمل جد ممتاز بارك الله فيكم هل يمكن استعمال الماكرو بين 2 شيتات
    1 point
  13. قم بإنشاء Module جديد و الصق فيه الشفرة التالية Public Function SetUserLogIn(User_Name_LogIn As String, Form_Name As String, Branch_Name As String) On Error Resume Next Dim varFilter As Variant Call Edit_Tables varFilter = Null varFilter = (varFilter) & "[User_Name_LogIn] LIKE '" & User_Name_LogIn & _ "' AND [Branch_Name] LIKE '" & Branch_Name & "'" With Forms(Form_Name) .DataEntry = False .Filter = varFilter .FilterOn = True .Requery End With End Function Public Sub Edit_Tables() On Error Resume Next Dim tdf As DAO.TableDef Dim db As DAO.Database Set db = CurrentDb For Each tdf In db.TableDefs If Not (tdf.Name Like "MSys*" Or tdf.Name Like "~*" Or tdf.Name Like "exl*") Then DoCmd.RunSQL "ALTER TABLE " & tdf.Name & " ADD [User_Name_LogIn] varchar(90)" DoCmd.RunSQL "ALTER TABLE " & tdf.Name & " ADD [Branch_Name] varchar(90)" End If Next End Sub و في جميع النماذج و التقارير في حدث عند الفتح ضع الكود التالي Call SetUserLogIn("حقل اسم المستخدم", Me.Form.Name, "حقل الفرع") تفضل التعديل asd (5).accdb
    1 point
  14. شكرا لك على هذا الكلام الطيب اخي الكريم تفضل التعديل قائمة المجلدات قابلة للتعديل كل مره تضيف فيها مجلد جديد راح يتم انشائه بشكل تلقائي عند اضافة صورة المجلدات راح يتم اضافتها لكل رقم وظيفي s.zip
    1 point
  15. السلام عليكم ورحمة الله وبركاته يمكنك الاستفادة من هذا الموضوع
    1 point
  16. الحمد لله الذى تتم بنعمته الصالحات انا كمان طويلب علم وان كنا انا وانت تعلمنا شيئا فكل ذلك بفضل الله سبحانه وتعالى ثم اساتذتنا الكرام الأجلاء بارك الله فيهم وجعل ذلك لهم فى موازين اعمالهم وحسناتهم وفى الاخير سبحانك لا علم لنا الا ما علمتنا انك انت العليم الحكيم
    1 point
  17. احسنت استاذي الغالي ابا جودي اطال الله في عمرك المديد هذا هو المطلوب ولكوني طالب علم بسيط لم اكن اعرف شيء عن هذه الدالة بفظلك الان عرفت
    1 point
  18. شرح دالة DateAdd تعد دالة DateAdd من دوال الوقت والتاريخ المهمة حيث تستخدم في إضافة مدة معينة على تاريخ معين تتطلب دالة DateAdd تحديد ثلاثة متغيرات هي : 1- نوع الفترة التي تريد إضافتها وهل هي يوم ِأم شهر أم سنة أم ساعة أو ..... إلخ ( التي تريد إضافتها ) 2- العدد أي ما هو عدد الأيام أو الأشهر أو السنوات أو الساعات أو ..... إلخ ( التي تريد إضافتها ) 3- التاريخ الذي تريد الإضافة إليه وتستخدم الدالة بالصيغة التالية : 'Syntax : DateAdd(interval, number, date) DateAdd(التاريخ, العدد, نوع الفترة) 'Examples : x = DateAdd("yyyy", 1, Date()) x = DateAdd("m", 5, Date()) x = DateAdd("d", 14, Date()) Interval Description yyyy Year q Quarter m month y Day of the year d Day w Weekday ww Week h hour n Minute s Second
    1 point
  19. Sub TestCode() Dim v, w, m As Long With Sheet1 m = .Columns(3).Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row v = .Range("B6:O" & m).Value w = Application.Index(v, Evaluate("ROW(1:" & UBound(v, 1) & ")"), [{1,2,3,14}]) Sheet2.Range("K3").Resize(UBound(v, 1), UBound(v, 2)).Value = w End With End Sub
    1 point
  20. تفضل هذا ملفك بعد إضافة الكود وتعديل أسماء الشيتات من المسافات الزائدة وتعديل الأعمدة التي سيتم الترحيل لها حيث كان بها خلايا في الأسفل (مكتوب فيها) تمنع من دقة معرفة آخر صف مكتوب فيه بالتوفيق البرنامج 1-1.xlsm
    1 point
  21. بسم الله الرحمن الرحيم تخفيض مستوى امان الماكرو ومنع ظهور الرسالة المزعجة له بنفيذ ملف مرة واحدة قبل تشغيل الاكسيل خاص ب اكسيل 11 متوافق مع اكسيل 11 فقط قد ينجح البعض من خلال الاكسيل فى تخفيض مستوى امان الماكرو بمستوى واحد فقط ولكن اذا كان مستوى امان الماكرو ( مرتفع جدا ) او ( مرتفع ) فلن يمكن الإكسيل تخفيضة الى ( المستوى المنخقض ) حتى لاتظهر الرسالة المزعجة ولكن يمكن التحايل على ذلك بتنفيذ ملف سكربت معين مرة واحده على الاجهزة التى بها هذا الازعاج فينخض مستوى امان الماكرو اى كان مستواه حتى لو كان ( مرتفع جدا ) فينخفض الى ( منخفض ) اذا كانت نسختك من الاكسيل 11 ( اوفيس 11 ) - ( 2003 ) جرب تنفيذ الملف المرفق قبل تشغيل الاكسيل Excel__11.rar
    1 point
  22. تحديد الخلايا المرتبطة بملف آخر لنشاهد المرفق Omar_1.rar
    1 point
  23. منع الوصول الى محرر الاكواد شاهد المرفق No_VBA_Editor.rar
    1 point
  24. عليكم السلام ورحمة الله وبركاتة الاخ أنور المرتاح هو ما تقول اخى ولكن يجب اولا ان ندرك شئ واضح لا يمكن لبرنامج واحد ان يشمل جميع نقاط موضوع معين النموذج الاول والثانى هما عن ل ( كشـف تـوزيـع فئـات النقـديـة ) فقط وليس الصرف وهو لتجهيز الفئات قبل الصرف النموذج الاول ::: هو يستخدم لمعرفة و استخراج توزيع فئات النقدية قبل الصرف بصفة عامة ( اى يحدد الفئات المطلوبه فقط ) النموذج الثانى ::: ايضا وهو لتجهيز الفئات قبل الصرف بالاضافى الى الاتى تحدد الفئات المتاحة له فيستخرج لك الاتى ::: فيحدد لك الفئات التى تم استخدامها من الفئات المتاحة بالاضافى الى تحديده للفئات الناقصة او الغير متوفرة لإستكمال الكشف اذن النموذج الثانى لابد ان يكون هناك فئات سالبة لتحديد الفئات المطلوبة لإستكمال الكشف اما ما تكرمت بطلبة هو ::: ( كشـف صـرف النقـديـة بالفئـات المتـاحـة ) هو شئ مختلف عن كشوف التوزيع المطلقة هو واقع فعلى لا يمكن ان يكون سالبا فهو عبارة عن كشـف صـرف النقـديـة بالفئـات المتـاحـة فلا يمكن ان يكون هناك فئات سالبة حتى يحاكى الواقع واذا كنت تتابع موضوعاتى لعرفت انى نوهت سابقا من انى انتهيت فعلا من اعداده واقوم بالمراجعة والتنقيح فلا يجب ان نخلط بين كشف توزيع وكشف صرف فالاول لمعرفة المفردات والثانى لابد ان يحاكى الواقع الفعلى ولكنى ارى ان الوضع غير مشجع لإستكمالة مع تحياتى
    1 point
  25. زيادة عملية التراجع و الإعادة ( Undo / Redo ) في الاكسل أكثر من 16 مرة اكسيل 11 نفذ الملف ::: ( More Undo Up To 100 ) زيادة عملية التراجع و الإعادة ( Undo / Redo ) نفذ الملف ::: ( Normal Undo ) للعودة الى الوضع الطبيعى Undo.rar
    1 point
  26. السلام عليكم ورحمة الله وبركاتة كل سنة وكل الاحبة والاخوة طيبين بحلول عيد الاضحى المبارك اضافة جديدة الى سلسلة الدوال العربية المبتكرة بأيدى عربية و تعمل بلغة عربية دالة اتخاذ القرار ( Resolve ) تستخدم فى تقيم المعدلات بصفة عامة مثل تقيم التقديرات - العمولات - الضريبة / لاحتمالات عديددة . استخدامها مثل استخدام اول وثانى بارميتر فى (VLOOKUP) يتم اولا عمل جدول التحديدات بثلاثة اعمدة مثل الجدول الاحمر او عمل جدول التحديدات بعمودين اثنين فقط مثل الجدول الازرق كما فى الصورة التالية : فى حالة الجدول الاحمر : العمود الاول هو الحد الادنى للقئه و الثانى هو الحد الاعلى للفئة و الثالث وهو تقيم هذه القئة وعدد صفوف الفئات اى عدد . فى حالة الجدول الازرق : فى هذه الحالة : يشترط الترتيب التصاعدى لفئات الجدول . العمود الاول هو حد بداية الفئه و الثانى هو تقيم هذه الفئة وعدد صفوف الفئات اى عدد . صيغة الاستخدام : =RESOLVE(جدول_التحديدات; قيمة_للإختبار) قيمة_للإختبار : هى القيمة التي سيتم البحث عنها في فئات جدول القرار او جدول المعدلات ويجب ان تكون قيمة أو مرجع . جدول_التحديدات : جدول القرار / التقديرات / العمولات / الضريبة / المعدلات / الذي يتم البحث فيه عن (قيمة_للإختبار) إستخدم مراجع نطاق جدول القرار أو تسميتة بأسماء النطاقات مثل MyRng أو Tbl. ويوجد شرح للدالة مع ثلاثة امثلة مختلفة بالمرفقات المرفقات : دالة اتخاذ القرار : Resolve_Function.rar نرجو الدعاء فى هذه الايام المباركة موضوع ذو صلة : احدى الطرق لحساب نسبة معدلات الخصم او الاضافة, او تقيم الاداء والدرجات
    1 point
  27. منع حفظ الملف بأسم آخر جديد * جديد يمكن طبعا اظهار رسالة للمستخدم تفيد بمنع تغير الاسم ______________________.rar
    1 point
  28. حل مشكلة عدم ظهور اكثر من 1000 سجل فى قوائم التصفية التلقائية مع شرح فيديو لطريقة الاستخدام Another_way_Auto_Filter.part1.rar Another_way_Auto_Filter.part2.rar Another_way_Auto_Filter.part3.rar
    1 point
  29. إنشاء قوائم منسدلة مرتبطة متعددة المستويات ( مرفق مثال اربع مستويات مع فيدو لشرح المثال ) مع كود لتسمية العديد من النطاقات دفعة واحدة المثال :: ___________________________________.rar الشرح ::: شرح إنشاء قوائم منسدلة مرتبطة متعددة المستويات شرح تسمية العديد من النطاقات دفعة واحدة
    1 point
  30. حفظ الملف الحالى فى مسار او موقع محدد و مختلف عن الموقع الافتراضى للإكسيل يتم تغير المسار المراد الحفظ فيه فى الكود التالى فى المتغير المسمى ( MyPath ) Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long Sub SaveMe() '/========================================= '/ يتم وضع مسار الحفظ كاملا فى المتغير التالى MyPath = "C:\ATest\BackUpFile" '/========================================= MyFileName = ActiveWorkbook.Name MakeSureDirectoryPathExists MyPath & "\" Application.DisplayAlerts = False ActiveWorkbook.SaveAs FileName:=MyPath & "\" & MyFileName Application.DisplayAlerts = True End Sub SaveMe_In_Diffrent_Location.rar
    1 point
  31. منع النسخ من جهازك الى الفلاش او السي دى او هارد ديسك خارجى يرغب بعض الاخوة منع المتطفلين من نسخ اعمالهم او نقلها الى الوحدات الخارجية مثل ::: الفلاش او السي دى او هارد ديسك خارجى او كروت الممورى الخارجية لعمل ذلك نفذ ا لملف بالمرفقات المسمى ::: No 2 Copy ثم اعد تشغيل الجهاز بذلك لن يستطيع اى شخص نسخ اى ملف من جهازك الى اى وحدة خارجية واذا اردت ان تلغى هذا المنع نفذ الملف المسمى :: Yes 2 Copy Copy_Control.rar
    1 point
  32. السلام عليكم أعجبتني فكرة الدالة فقمت باختصارها : Function myIF(ParamArray Arg_A_B()) As Variant Dim Max As Integer Dim index As Integer On Error Resume Next Max = UBound(Arg_A_B) For index = 0 To Max Step 2 If Arg_A_B(index) = True Then myIF = Arg_A_B(index + 1) Exit Function End If Next index If (Max + 1) Mod 2 = 1 Then myIF = Arg_A_B(Max) End Function تحياتي .
    1 point
  33. بسم الله الرحمن الرحيم الاخ hofn بعد التحية اخى لايوجد خطأ انت نسيت ادراج الدلة "IFYes " بالملف فقط لقد ادرجتها لك بالمرفق سوف تجد الدلة فى : الدوال المعرفة بواسطة المستخدم ابلغنى بالنتائج تحياتى if_yes.rar
    1 point
  34. بسم الله الرحمن الرحيم الاخ حمـدالحمد جرب هذا الملف وتوضيح بسيط بالصور لكيف تقوم ببحث متنوع الملف فى المرفقات Bank_1.0.rar
    1 point
×
×
  • اضف...

Important Information