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

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

  1. Moosak

    Moosak

    أوفيسنا


    • نقاط

      6

    • Posts

      1,997


  2. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      5

    • Posts

      6,818


  3. محمد حسن المحمد

    • نقاط

      5

    • Posts

      2,216


  4. lionheart

    lionheart

    الخبراء


    • نقاط

      4

    • Posts

      664


Popular Content

Showing content with the highest reputation on 23 فبر, 2022 in all areas

  1. السلام عليكم ورحمة الله تفضل sample.xlsx
    3 points
  2. تم تعديل الكود : Public Sub Check(FiledName As Control) Dim X As Integer Dim Count As Integer Dim TL As Integer Dim L, M As String TL = Len(FiledName) For X = 1 To TL L = Mid(FiledName, X, 1) M = Mid(FiledName, X, 2) If IsNumeric(L) = True Then If L > 5 Then Count = Count + 1 End If End If If IsNumeric(M) = True Then If M > 5 Then Count = Count + 1 End If End If Next X If Count > 0 Then FiledName.FontBold = True FiledName.ForeColor = vbRed Else FiledName.FontBold = False FiledName.ForeColor = vbBlack End If End Sub والآن تتعرف عليها بفضل الله .. المرفق : الرقم 5.accdb
    3 points
  3. اعرض الملف مثال على تصفية فائمة بناء على اخرى بدون كود 3.0 - حالة خاصة هذا المثال يعالج حالة خاصة من الملف الاساسي الوارد ادناه ، بناء على طلب أحد الزملاء اولا هذه وصلة الملف الأصلي الصالح للحالات العامة: و هي الحاجة لتسمية أسامي الحقول بالقائمة الأساسية ( الخلايا الصفراء) بحيث تحوي مسافات مثل Agency 1 بدلا من Agency1 فى المثال الأصلي، و هنا لا يمكن تسمية النطاقات الفرعية باسماء بها مسافات لتماثل القائمة الاساسية، فيتم التحايل بتسمية النظاقات فقط مع استبدال المسافة ب "_" و تغيير المعادلة لتشمال استخدام الدالة Substitute مع الدالة Indirect كما هو موضح فى الصورة والمثال المرفق لتصبح المعادلة كما يلي : =INDIRECT(SUBSTITUTE(D23," ","_")) صاحب الملف محمد طاهر تمت الاضافه 23 فبر, 2022 الاقسام قسم الإكسيل  
    2 points
  4. بارك الله فيك استاذ ابراهيم معادلة ممتازة جعله الله فى ميزان حسناتك anatshih .... انتبه من فضلك فهذه ليست معادلة عادية ولكنها معادلة مصفوفة فلابد الضغط على Ctrl+Shift+Enter وليس Enter فقط كباقى المعادلات .. وشكرا
    2 points
  5. السلام عليكم و رحمة الله و بركاته اخواني و اساتذتي الاعزاء رواد منتدانا الغالي اضع بين يديكم مثال لارسال ايميل مع مرفق لمستلمين يتم اختيار سجلاتهم . هذه الطريقه تعتمد على الاوتلوك و قد رأيت امثله جميله من الاساتذه في هذا المنتدى و احببت ان اشارك بمثالي عسى ان يكون به فائده لمن يحتاجه . ليعمل البرنامج يحتاج الى اضافة مرجع للاوتلوك من محرر الفيجوال بيسك ثم اختيار القائمه Tools محبكم يوسف أحمدSend Email.rar
    2 points
  6. أحسنت دكتور محمد بارك الله فى جهودكم ... عمل رائع جعله الله فى ميزان حسناتك
    2 points
  7. السلام عليكم ورحمة الله وبركاته تفضل أخي الكريم Book1 (2).xlsx
    2 points
  8. Private Sub CommandButton4_Click() Dim x As Control, s As String, r As Long For Each x In UserForm2.Controls If TypeName(x) = "CheckBox" Then If x.Value = True Then r = r + 1 s = s & IIf(s = vbNullString, vbNullString, vbLf) & x.Name End If End If Next x MsgBox "There are " & r & " Checkboxes" & vbCrLf & s End Sub
    2 points
  9. السلام عليكم ورحمة الله وبركاته... عود على بدء في موضوعي هذا: اقدم لكم النسخة الثانية من اداة رفع الملفات ونسخ الباك اب الى Google Drive لكن هذه المرة ستقوم الاداة بضغط الملف وتشفيرة بباسورد بأستخدام winRAR ومن ثم رفعه الى Google Drive لمنع اي شخص من الاطلاع على محتويات الملف المضغوط لان الضغط هنا سيكون Encrypt File Names بعبارة اخرى سيكون الملف المضغوط هكذا شكله: لن تستطيع ان تعرف ما يحويه الملف المضغوط من ملفات الا اذا قمت بوضع الباسورد. اضفت براميتر جديد على الاداة وهو باسورد الضغط، ستجدون كل شيء في ملف الاكسس، وباقي الامور شرحناها في الدرس السابق لا تنسوني ووالدي من صالح دعائكم. تم بحمد الله. GoogleDriveUploader_fixed.rar
    1 point
  10. السلام عليكم ..لدي شيت يحتوي على قيم رقمية احتاج الى تغيير قيم الخلية التي يكون لونها باللون الاحمر عند نغيير قيمة الخلية نفسها وتغيير لون الخلية الى لون اخر غير اللون الاحمر...فمثلا الخلية D7 تحتوي القيمة 35 ولونها احمر ...عند تغيير قيمة الخلية من 35 الى 66 مثلا تتغير قيمة الخلية D7 الى 55 اي ينقص 10 نقاط ويتغير لون الخلية الى لون اخر غير اللون الاحمر Book1.xlsx
    1 point
  11. السلام عليكم .. الاخوة الأعزاء موضوعنا اليوم عن القائمة المختصرة مجددا ولكن بتطبيقات اكثر تقدما مثل جعلها متعددة المستويات وتتغير ديناميكياً طبقاً لشروط تضعها بيدك .. نبدأ بسم الله بداية يجب ان يكون هذا الموضوع مرجعك فى اى موضوع يتعلق بالقائمة المختصرة .. هذا الموضوع بقلم أستاذنا المبدع @jjafferr ويمكنك ايضا استعراض هذا الموضوع لتطبيقات مختلفة على القائمة المختصرة نبدأ الموضوع الجديد : بداية لن استفيض فى شرح الكيفية لأن بعد استعراضك للموضوعين السابقين سنفترض انك فهمت كافة التفاصيل المتعلقة بالقائمة المختصرة . التطبيق الاول : كيف يتم ربط القائمة المختصرة بالكائنات Objects الموجودة بقاعدتك ( نماذج - تقارير- استعلامات - ماكروهات ) مثال : الطريقة هنا تعتمد على مجموعة استعلامات تقوم باستخلاص انواع الكائنات من جداول النظام وتقوم الموديول الخاص بالقائمة المختصرة بعرض هذه الكائنات فى القائمة . المثال الخاص بها مرفق بإسم Amr Multi Level Menu-All Objects . عيوب الطريقة : انها ستعرض لك الكثير من الكائنات التى لن تحتاجها فى القاعدة مثل النماذج الفرعية و ماكروهات الالحاق والتحديث والحذف Append,Update,Delete , مما يأخذنا للتطبيق الثاني . التطبيق الثانى : فى هذا التطبيق سنقوم بوضع نوع و اسماء الكائنات المطلوب عرضها فى القائمة المختصرة فى جدول اسميته TblConditions . مثال: المثال الخاص بها مرفق بإسم Amr Multi Level Menu-Some Objects . التطبيق الثالث : يعتمد هذا التطبيق بربط التطبيق الثانى بصلاحيات المستخدمين, افترضت فى المثال ان عندى 3 مجموعات رئيسية للمستخدمين اول مجموعة Admins او المدراء ولهم كافة الصلاحيات , المجموعة الثانية المستخدم العادى ولهم بعض الصلاحيات , المجموعة الثالثة الضيوف ولهم صلاحية واحدة فقط وهو عرض الشاشة الرئيسية او نموذج واحد مثلا , ويتم تحديد المجموعات التى لها صلاحية استعراض الكائنات فى سجل بجانب اسم الكائن ونوعه فى الجدول TblConditions . مثال : ملاحظة : القائمة الأخيرة " صنعت خصيصاً " جعلتها حصراً على الAdmins فقط وبالتالى لن تظهر لباقى المجموعات . ستجد المثال الخاص بهذا التطبيق باسم Amr Multi Level Menu-Some Objects - Users - V2.0 . وبهذا انتهى الموضوع . ملاحظات عامة : استوحيت فكرة القائمة المتعددة المستويات من شخص اجنبى اسمه MaJip وقمت ببناء افكارى عليها . يمكن استدعاء القائمة عند فتح النموذج او عند النقر على الصورة الموجودة فى الامثلة ومرفق الطريقتين استخدم ما يناسبك . القوائم التى تنحدر منها قوائم اخرى لا يمكن تخصيص ايقونة لها ولكن القوائم الفرعية يمكن تخصيص ايقونة لها سواء عن طريق خاصية Face ID او عن طريقة خاصية Picture لارفاق صورة خارجية . فكرة صلاحيات المستخدمين طلبها الأخ @عمر ضاحى وبالتالى صممتها وارفقتها للموضوع . أستاذنا @jjafferr يرجى مراجعة الموضوع وتصحيح ما أخطأت به ان وجد 😅 جزاكم الله خير الأخ العزيز @ابو جودي اعتذر عن استخدام مثالك لأنى كنت قد جهزت الامثلة المستخدمة بالفعل .. جزاك الله خير دمتم بخير Amr Multi Level Menu -All Objects.accdb Amr Multi Level Menu-Some Objects - Users - V2.0.accdb Amr Multi Level Menu-Some Objects.accdb
    1 point
  12. السلام عليكم ورحمة الله وبركاته،، ونسأل الله لكم العون والتوفيق،، أساتذتنا الكرام،، كما تعلمون عندما نريد أن نجمع نص خليتين في خلية واحدة يكون كهذا =a1&" "& a2 وتكون في سطر واحد،، لكني أريد أن يكون a1 في سطر و a2 في سطر آخر في نفس الخلية،، فكيف السبيل إلى ذلك سلمكم الله،،
    1 point
  13. قبل ان تقوم باضافة طلبات اخرى وجب عليك قراءة هذا الشيء
    1 point
  14. قم بتطويع هذا الكود مع ما يتناسب مع احتياجاتك Sub export_sheets() Dim Fname As String, ws As Worksheet Application.DisplayAlerts = False ' في هذا السطر ضع اسماء الشيتات المحددة Sheets(Array("sheet1", "sheet2")).Copy For Each ws In ActiveWorkbook.Sheets ws.UsedRange = ws.UsedRange.Value Next ws wb_name = "taqreer" ActiveWorkbook.SaveAs Filename:= _ 'مكان تخزين الملف "C:\Users\alhajaj\Desktop\" & wb_name & " report " & Format(Date, "dd-mm-yy") & ".xlsx", FileFormat:=51 ActiveWorkbook.Close Application.DisplayAlerts = True End Sub
    1 point
  15. اخ محمد اشكرك اشكرك .. هذا ما ارته من الاول .( التجربه اوليه ممتازه ). وسوف اجربه اكثر وإن كان هناك من تعديل سوف اخبرك .. تحياتي لك ولصبرك وبارك فيك ولك
    1 point
  16. السلام عليكم أخي الكريم لا شكر على واجب، أرجو أن يكون الحل مناسباً =IF(VLOOKUP($B$2;'المبالغ المتاخره'!$B$26:$AQ$61;ROW()-16;0)=0;"";VLOOKUP($B$2;'المبالغ المتاخره'!$B$26:$AQ$61;ROW()-16;0)) تقبل تحياتي العطرة _للارسال (1).xlsm
    1 point
  17. الف شكر استاذي ابو احمد من طول الغيبات جاب الغنايم
    1 point
  18. السلام عليكم اخ @lionheart الكود يعمل بشكل جيد شكرا لك و جزاك الله كل خير
    1 point
  19. اتفضل الكود يكون كالأتى : Private Sub Form_Error(DataErr As Integer, Response As Integer) 'to know error number use next line 'MsgBox DataErr & vbCrLf & Err.Description Response = acDataErrContinue If DataErr = 3314 Then Response = True: MsgBox "You can write the of message here as you like" End Sub وهذا التطبيق على مرفقكم id primary key.accdb
    1 point
  20. تكرم عينك أولاً نجلب الأسماء بمعادلة صفيف أي أنك عندما تكتب المعادلة لا تكتفي بالضغط على Enter بل ALT+SHIFT+ENTER =IFERROR(INDEX($A$3:$A$100;MATCH(0;COUNTIF($D$2:D2;$A$3:$A$100);0));"") ثم تجلب مجموع كل اسم في العمود E كما يلي: =IF(D3="";"";SUMIF($A$3:$B100;$D3;$B$3:$B100)) والسلام عليكم Book6.rar
    1 point
  21. شكرا لك اخى الكريم ما قصرت ولكن هل فى معادلة تقوم بنفس الطريقة الا اتفضلت وقدمتها
    1 point
  22. شكرا لك اطبق عملى وابلغك .... الف شكر يا اخى
    1 point
  23. الف شكر يا استاذى ممكن خطوات موديول ازاى اشغل موديول
    1 point
  24. Yes you can show the result in any cell by using the cell reference like that Range("H4").Value = r
    1 point
  25. هذا الموضوع مخالف لقوانين المنتدي ×××××××× يغلق ×××××××× الإدارة نشر موضوع بدون اى جداوى لا يحتوى على اى اسئلة واستخدام عنوان كذلك بدون اى معنى برجاء الاهتمام والحفاظ على سياق النشر والمشاركة طبقا للقواعد المنظمة ولان حضرتك عضو جديد اهلا بكم معنا اولا فى المنتدى ... ويكتفى فقط بالتوضيح تكرار المخالفات يعرضك لحذفها تقبل تحياتى
    1 point
  26. 1 point
  27. جزاك الله خير ولكن اريد عدم تكرار الرقم فى العمود d
    1 point
  28. أحسنتم أستاذنا الكريم @محمد طاهر بارك الله بكم جهد مشكور ...أسأل الله تعالى أن يجعله بميزان حسناتكم آمين.🙂
    1 point
  29. وعليكم السلام ورحمة الله وبركاته اذا كان العملاء كثيرون فلا يمكن تلوين كل عميل بلون مختلف لان الالوان قليلة فلابد من تكرار بعض الالوان لذلك سنلجا الي فكرة اخري اذا نجحت في تطبيق الفكرة سارسلها لك هنا جاري العمل تقبل تحياتي
    1 point
  30. اخبرني رجاء بما توصلت اليه
    1 point
  31. تريد ادخال قيمة بنفسك ؟ اود تسبها كما هى صفر123.mdb
    1 point
  32. تم حل المشكله وعرفت اين خطئى حيث انى نسيت ان اضيف اسم عنصر التحكم (المعرف او مدري شنو اسمه) ^_^ المهم الصحيح هكذا Set menultems1 = cbMenu1.Controls.Add.Picture = picPicture10: menultems1.BeginGroup = True: menultems1.Caption = "تغير المستخدم": menultems1.OnAction = "cmdChangeUser": menultems1.Picture = picPicture10
    1 point
  33. وفقك الله أخي نبيل @nabilalibibo .. ولا تنسى التأشير عليها كأفضل إجابة 👍😉
    1 point
  34. انا بالخدمة استاذ نبيل...كنت اظن انك تريد مربع تحرير لاضافة السنوات واخر لاضافة الاشهر لكن تلقفها استاذ @Moosak لان كان شاعل بخور 😂
    1 point
  35. 1 point
  36. هذه مشاركتي 🙂 Private Sub Months_AfterUpdate() If Me.Months = "6 شهور" Then Me.End = DateAdd("M", 6, Me.Start) End If If Me.Months = "سنة" Then Me.End = DateAdd("M", 12, Me.Start) End If End Sub DateAdd.accdb
    1 point
  37. هذا الحل الذي أعددته في حال أن الأخ @elghoultk قال أن حقل النص بهذه الطريقة ( 15 - 20) .. ولكن قد سبقني بها عكاشة @kanory 😅 الحل أن تضع هذه الدالة في محرر الأكواد : Public Sub Check(FiledName As Control) Dim X As Integer Dim Count As Integer Dim TL As Integer Dim L As String TL = Len(FiledName) For X = 1 To TL L = Mid(FiledName, X, 1) If IsNumeric(L) = True Then If L > 5 Then Count = Count + 1 End If End If Next X If Count > 0 Then FiledName.FontBold = True FiledName.ForeColor = vbRed Else FiledName.FontBold = False FiledName.ForeColor = vbBlack End If End Sub ثم تناديها عند حدث بعد التغيير لمربع النص + وكذلك عند حدث في الحالي للنموذج .. هكذا : ( ولا تنسى تغيير اسم مربع النص ) 🙂 Private Sub Form_Current() If IsNull(Me.NumberxTxt) Then Exit Sub Check NumberxTxt End Sub Private Sub NumberxTxt_AfterUpdate() Check NumberxTxt End Sub والنتيجة عند عدم وجود رقم أكبر من الخمسة : وعند تحقق المطلوب : مرفق المثال : الرقم 5.accdb
    1 point
  38. جرب هذا مع تغيير بيانات الكود حسب بيانات النموذج لديك ...... Dim strnum As String Dim iCounter As Integer Dim arrnum() As String Dim Rep_lace As String strnum = Me.kan Rep_lace = Replace(strnum, "(", "") Rep_lace = Replace(Rep_lace, ")", "") arrnum = Split(Rep_lace, "-") For iCounter = LBound(arrnum) To UBound(arrnum) If arrnum(iCounter) > 5 Then With Me.kan .FontBold = True .ForeColor = 255 End With Else With Me.kan .FontBold = False .ForeColor = 0 End With End If Next
    1 point
  39. lionheart🤩 ماشاء الله عليك استاذ والله انت مبدع و جعله الله في ميزان حسناتك ربنا يحميك
    1 point
  40. السلام عليكم و رحمة الله وبركاته بعد اذن الاخ هشام في الملف المرفق اكتب اي جزء من الاسم الذي تريدة سوف تعمل التصفية تلقائيا على استخراج المطلوب Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$B$5" Then Dim ER, FF, RN1 As Range ER = ActiveSheet.UsedRange.Rows.Count + 9 Set RN1 = Range("A9:V" & ER) FF = Range("B5").Text If FF = "" Then RN1.AutoFilter Field:=2 Else FF = "*" & FF & "*" RN1.AutoFilter Field:=2, Criteria1:=FF, Operator:=xlOr, _ Criteria2:="=" End If Range("B5").Select End If End Sub حساب عدد ايام العمل (1).xlsm
    1 point
×
×
  • اضف...

Important Information