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

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

  1. Ali Mohamed Ali

    Ali Mohamed Ali

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


    • نقاط

      22

    • Posts

      11,621


  2. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      5

    • Posts

      6,503


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

    أ / محمد صالح

    أوفيسنا


    • نقاط

      5

    • Posts

      4,357


  4. Moosak

    Moosak

    أوفيسنا


    • نقاط

      5

    • Posts

      1,851


Popular Content

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

  1. تم ايقاف دعم الاصدارات القديمة من مايكروسوفت طبعا انتقل لتواكب التطور تتنقل لاى اصدار انت قرر حسب متطلباتك وفقا للمقارنة الاتية... Microsoft Access Version Office 365 2021 2019 2016 2013 2010 2007 2003 2002 (XP) 2000 97 95 2.0 1.1 1.0 Original Release Date 2021 Oct 2021 Oct 2018 Sep 2015 Sep 2013 Feb 2010 Jul 2007 Jan 2003 Nov 2001 May 1999 Jun 1997 Jan 1995 Aug 1994 Apr 1993 May 1992 Nov Version Number 16.0 15.0 14.0 12.0 11.0 10.0 9.0 8.0 7.0 2.0 1.1 1.0 Latest Service Pack continuous -- -- -- SP1 SP2 SP3 SP3 SP3 SP3 SR2 -- 2.5 -- -- Minimum RAM 32 Bit: 2GB 64 Bit: 4GB 32 Bit: 1GB 64 Bit: 2GB 256 MB 256 MB 128 MB 72 MB 16 MB 16 MB 8 MB 4 MB -- -- Part of Microsoft Office Free Runtime Version Runtime Version Download Same as 365 Same as 365 Download Download Download Download Office Developer Edition 2003 Office Developer Edition 2002 Office Developer Edition 2000 Office Developer Edition 97 Access Developer's Toolkit 7.0 Access Developer's Toolkit 2.0 Access 1.1 Distribution Kit -- 64-bit Version Office 365 Installation Database Formats and Security Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 Database Formats ACCDB & MDB ACCDB & MDB ACCDB & MDB ACCDB & MDB ACCDB & MDB ACCDB & MDB ACCDB & MDB MDB MDB MDB MDB MDB MDB MDB MDB MDB Format 2003 2003 2003 2003 2003 2003 2003 2003 2000 2000 97 2.0 2.0 1.1 1.0 Compiled MDE ACCDB Format Compiled ACCDE Jet Database Engine (DAO) ACE ACE ACE ACE ACE ACE ACE 4.0 4.0 4.0 3.5 3.0 2.0, 2.5 with SP 1.1 1.0 Access Database Engine (ACE) 16.0 Download 14.0 14.0 Download 12.0 Sandboxed ACE Workgroup Security (MDB format) ActiveX Data Objects (ADO) Record Locking, Unicode Storage Digital Signatures (MDB only) Does not support current code signing certificates Trusted Locations (Directories) Database Encryption (ACCDB) Data Macros (ACCDB) ODBC connection retry logic Access Data Projects (ADP) connected to SQL Server Access Web Apps (AWA) SharePoint 2013 SQL Server Office 365 SharePoint 2013 SQL Server SharePoint 2010 Lists Programming Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 VBA Programming Language (VBA) Shared IDE with Visual Basic 6.0 Temporary Variables TempVars (ACCDB) Access Basic Programming Language Database Container Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 Navigation Pane and Search Database Window Windows XP Themes Tabbed Interface Quick Access Toolbar Ribbons Change Office Theme Linked Tables Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 Dataverse Enhanced Linked Table Manager Salesforce and Dynamics 365 365 Excel *.xlsx Format (ACCDB only) Saved Import/Export Specifications dBase Tables Lotus 1-2-3 Spreadsheets Paradox Tables Field Data Types Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 Hyperlinks Link to SharePoint Lists Attachment Fields (ACCDB) Multi-value Fields (ACCDB) Memo Fields with History (ACCDB) Memo Fields as HTML (ACCDB) SQL Server BigInt 365 Date/Time Extended 365 Features Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 ActiveX Controls Form Conditional Formatting of Fields Report Output to PDF Report View Alternating Row Colors Datasheet Totals Datasheet Multi-Select Column Filtering Simplified "Smart" Datasheet/Form Filtering Form Navigation Caption Form Buttons with Text and Image Form Object Anchoring and Resizing Date Picker Web Browser Control Image Control with Control Source Split Forms Navigation Forms Image Gallery (Shared Resources) Modern Charts Property Sheet sorting Enhanced Zoom Box 365 365 Add Tables Task Pane Highlighted Active Tab Dark Theme Support Query Designer, SQL and Relationship View Enhancements Command Bars Data Access Pages (DAP) Pivot Charts / Pivot Tables Smart Tags Visual SourceSafe Integration Upsizing Wizard Package Solution Wizard Data Collection Emails Microsoft References Office 365 2021 2019 2016 2013 2010 2007 2003 2002 (XP) 2000 97 95 2.0 1.1 1.0 New Features 2021 2019 2013 2010 Discontinued Features 2013 Windows Version Office 365 2021 2019 2016 2013 2010 2007 2003 2002 2000 97 95 2.0 1.1 1.0 Windows 11 * * * * Windows 10 * * * Windows 8.0/8.1 * * * Windows 7.0/SP1 * * Windows Vista SP1 * * Windows XP SP3 SP2 Windows 2000 SP3 Windows 98 Windows NT 4.0 SP6 SP2 SP2 Windows NT 3.51 SP5 Windows 95 Windows 3.1 Windows 3.0
    5 points
  2. وعليكم السلام أهلا وسهلاً بك بالمنتدى , كان لابد من رفع ملف لتوضيح المطلوب بكل دقة وتجنباً لإهدار وقت كل من يود مساعدتك .. ولكن عموماً بإفتراض ان الرقم المراد تقسيمه الى سنوات وشهور وأيام موجود بالخلية A2 فستكون المعادلات كالتالى =INT(A2/360) 'الشهور =INT(MOD(A2,360)/30) 'الأيام =MOD(A2,30)
    4 points
  3. يمكنك وضع هذه المعادلة في H10 وسحبها يسارا =COUNTIFS($C$2:$C$10000,H$7,$F$2:$F$10000,"أنثى") وضع هذه المعادلة في H11 وسحبها يسارا =COUNTIFS($C$2:$C$10000,H$7,$F$2:$F$10000,"ذكر") وطبعا في H12 =SUM(H10:H11) بالتوفيق
    4 points
  4. وعليكم السلام في الخلية F2 =IF(WEEKDAY([@[Date Doc.]]+45;16)=7;[@[Date Doc.]]+44;[@[Date Doc.]]+45) واسحب نزولاً تقبل تحياتي.
    3 points
  5. وعليكم السلام . كان لابد من رفع ملف للتوضيح ولكن يمكنك استخدام هذه المعادلة =IF(A1<=21000,0, IF(A1<=30000,(A1-21000)*2.5%, IF(A1<=45000,(A1-30000)*10%+225, IF(A1<=60000,(A1-45000)*15%+225+1500, IF(A1<=200000,(A1-60000)*20%+225+1500+2250, IF(A1<=400000,(A1-200000)*22.5%+225+1500+2250+28000, IF(A1<=600000,(A1-400000)*25%+225+1500+2250+28000+45000, IF(AND(A1>600000,A1<=1200000),(A1-400000)*25%+225+1500+2250+28000+45000+IFERROR(LOOKUP(A1,{600001;700001;800001;900001},{525;2775;5025;8025}),0), IF(A1>1200000,((A1-1200000)*27.5%)+300000,0) ))))))))
    3 points
  6. هذا الخطأ معناه ان هناك حقل [Org_Name] هذا الحقل متكرر فى اكثر من جدول بنفس الاسم يجب ان يكون هناك اختلاق بين التسميات زود حرف فى باقي الجداول او ارقام لتميز كل حقل عن الاخر
    3 points
  7. لايستجيب لانك للاسف قمت بنسخ ووضع الاكواد بطريقة خاطئة لقد تعمدت عدم رفع الملف جاهز لتتمكن انت بوضعها بغرض الاستفادة والتعلم وهدا هو هدفنا الاول ملاحظة : لقد لاحظت انك قمت بحدف الجداول السفلى في ورقة 10 لهدا تم استبدال نطاق المعادلات من With Range("H9:H44") .Formula = "=SUMIFS('" & b & "'!" & V1.Address & ",'" & b & "'!" & V2.Address & ","">=""&$E$5,'" & b & "'!" & V2.Address & ",""<=""&$G$5,'" & b & "'!" & V3.Address & ",C9)" .Value = .Value الى اخر صف عليه بيانات في عمود الصنف With Range("H9:H" & lastrow) .Formula = "=SUMIFS('" & b & "'!" & v1.Address & ",'" & b & "'!" & V2.Address & ","">=""&$E$5,'" & b & "'!" & V2.Address & ",""<=""&$G$5,'" & b & "'!" & V3.Address & ",C9)" .Value = .Value تفضل اخي برنامج المستودع 2.xlsb
    3 points
  8. الحمدلله أكتملت الفكرة والتنفيذ 🙂 عملت نموذجين .. وتبقى تكملة المشروع لتكون صفحة تسجيل دخول مكتملة 🙂 النمط الأول : النمط الثاني : للتحميل : MoosaK_Pattern_Lock.accdb
    3 points
  9. هذه فقط تظهر معك لعدم ضبط اللغة العربية لديك , فعليك بضبطها وأوضحنا هذا من قبل كثير جداً
    2 points
  10. السلام عليكم لدي ملف به مواعيد تسديد بعد 45 يوما اريد معادلة تغيير التاريخ إذا صادف موعد السداد يوم جمعة إلى يوم الخميس أي تصبح 44 يوما. الملف في المرفقات Suivi.xlsx
    1 point
  11. جزلك الله خيرا
    1 point
  12. لا أدري لماذا لم توجد صراحة حالة كون الرقم 50 على العموم للتقريب لأقرب 100 يمكنك استعمال هذه المعادلة =mround(a2,100) على افتراض أن العدد المراد تقريبه في الخلية A2 ويمكن تغيير التقريب إلى أي رقم حتى لو رقم عشري بالتوفيق
    1 point
  13. أهلا وسهلا بك أخي عبد الباقي @Abdalbagi Hassan 🙂 🌹🌼 وبما أنك عضو جديد .. تفضل عزيزي وخذ لك نبذة عن قوانين المشاركة في المنتدى : قواعد المشاركة فى الموقع : اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة ولا تنسى استخدام خاصية البحث للحصول على النتائج السابقة عن المواضيع التي تحتاجها وقبل أن تسأل عنها :
    1 point
  14. اشكر حضرتك على تبنى الفكره ومتابع مع حضرتك من خلال جروب الواتس
    1 point
  15. السلام عليكم ورحمة الله جرب الملف بالمرفقات وإن شاء الله ينجح معك... برنامج شهادات.xls
    1 point
  16. السلام عليكم ورحمة الله من أي ناحية لم تعرف كيف تتعامل مع الملف... تختار أولا الصف الذي تريد طباعة أرقام الجلوس تبعه من القائمة المنسدلة في الخلية V6 ثم تملأ (يدويا) الخليتين من ... إلى ... (في الخلايا V9 وW9) إذا تريد الطباعة باستعمال خاصية "من... إلى..." ثم تضغط على الزر الموافق لهذا الاختيار PRINT From_To وإذا كنت تريد الطباعة كل أرقام الجلوس في هذا الفصل تضغط مباشرة على الزر PRINT_ALL... وليس لي شرح آخر... في المرفقات قمت بالتعديل على ماكرو الطباعة (الجزئية والكلية) لكي يعمل الملف على نسختي 2003 و 2007... والله أعلم. اداة ارقام جلوس.xls
    1 point
  17. المعادلة تعمل بالفعل وشغالة تمام بملفك وشوف بنفسك
    1 point
  18. Function NoToTxt(TheNo As Double, MyCur As String, MySubCur As String) As String Dim MyArry1(0 To 9) As String Dim MyArry2(0 To 9) As String Dim MyArry3(0 To 9) As String Dim MyNo As String Dim GetNo As String Dim RdNo As String Dim My100 As String Dim My10 As String Dim My1 As String Dim My11 As String Dim My12 As String Dim GetTxt As String Dim Mybillion As String Dim MyMillion As String Dim MyThou As String Dim MyHun As String Dim MyFraction As String Dim MyAnd As String Dim i As Integer Dim remark As String If TheNo > 999999999999.99 Then Exit Function If TheNo = 0 Then NoToTxt = "صفر" Exit Function End If MyAnd = " و" MyArry1(0) = "" MyArry1(1) = "مائة" MyArry1(2) = "مائتان" MyArry1(3) = "ثلاثمائة" MyArry1(4) = "أربعمائة" MyArry1(5) = "خمسمائة" MyArry1(6) = "ستمائة" MyArry1(7) = "سبعمائة" MyArry1(8) = "ثمانمائة" MyArry1(9) = "تسعمائة" MyArry2(0) = "" MyArry2(1) = " عشر" MyArry2(2) = "عشرون" MyArry2(3) = "ثلاثون" MyArry2(4) = "أربعون" MyArry2(5) = "خمسون" MyArry2(6) = "ستون" MyArry2(7) = "سبعون" MyArry2(8) = "ثمانون" MyArry2(9) = "تسعون" MyArry3(0) = "" MyArry3(1) = "واحد" MyArry3(2) = "اثنان" MyArry3(3) = "ثلاثة" MyArry3(4) = "أربعة" MyArry3(5) = "خمسة" MyArry3(6) = "ستة" MyArry3(7) = "سبعة" MyArry3(8) = "ثمانية" MyArry3(9) = "تسعة" '====================== GetNo = Format(TheNo, "000000000000.00") i = 0 Do While i < 15 If i < 12 Then MyNo = Mid$(GetNo, i + 1, 3) Else MyNo = "0" + Mid$(GetNo, i + 2, 2) End If If (Mid$(MyNo, 1, 3)) > 0 Then RdNo = Mid$(MyNo, 1, 1) My100 = MyArry1(RdNo) RdNo = Mid$(MyNo, 3, 1) My1 = MyArry3(RdNo) RdNo = Mid$(MyNo, 2, 1) My10 = MyArry2(RdNo) If Mid$(MyNo, 2, 2) = 11 Then My11 = "إحدى عشر" If Mid$(MyNo, 2, 2) = 12 Then My12 = "إثنى عشر" If Mid$(MyNo, 2, 2) = 10 Then My10 = "عشرة" If ((Mid$(MyNo, 1, 1)) > 0) And ((Mid$(MyNo, 2, 2)) > 0) Then My100 = My100 + MyAnd If ((Mid$(MyNo, 3, 1)) > 0) And ((Mid$(MyNo, 2, 1)) > 1) Then My1 = My1 + MyAnd GetTxt = My100 + My1 + My10 If ((Mid$(MyNo, 3, 1)) = 1) And ((Mid$(MyNo, 2, 1)) = 1) Then GetTxt = My100 + My11 If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My11 End If If ((Mid$(MyNo, 3, 1)) = 2) And ((Mid$(MyNo, 2, 1)) = 1) Then GetTxt = My100 + My12 If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My12 End If If (i = 0) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then Mybillion = GetTxt + " مليار" Else Mybillion = GetTxt + " مليارات" If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " مليار" If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " ملياران" End If End If If (i = 3) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then MyMillion = GetTxt + " مليون" Else MyMillion = GetTxt + " ملايين" If ((Mid$(MyNo, 1, 3)) = 1) Then MyMillion = " مليون" If ((Mid$(MyNo, 1, 3)) = 2) Then MyMillion = " مليونان" End If End If If (i = 6) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then MyThou = GetTxt + " ألف" Else MyThou = GetTxt + " آلاف" If ((Mid$(MyNo, 3, 1)) = 1) Then MyThou = " ألف" If ((Mid$(MyNo, 3, 1)) = 2) Then MyThou = " ألفان" End If End If If (i = 9) And (GetTxt <> "") Then MyHun = GetTxt If (i = 12) And (GetTxt <> "") Then MyFraction = GetTxt End If i = i + 3 Loop If (Mybillion <> "") Then If (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then Mybillion = Mybillion + MyAnd End If If (MyMillion <> "") Then If (MyThou <> "") Or (MyHun <> "") Then MyMillion = MyMillion + MyAnd End If If (MyThou <> "") Then If (MyHun <> "") Then MyThou = MyThou + MyAnd End If If MyFraction <> "" Then If (Mybillion <> "") Or (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then NoToTxt = remark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur + MyAnd + MyFraction + " " + MySubCur Else NoToTxt = remark + MyFraction + " " + MySubCur End If Else NoToTxt = remark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur End If End Function استخدم هذا الكود تفقيط الارقام فى الاكسس.accdb وهذا الكود يحول من الأرقام إلى الحروف و لكن باللغة الأنجليزية و هو بالطبع بلغة الفيجوال بيسك للتطبيقات المرفقة مع قواعد بيانات أكسس و يمكنك وضع الكود في MODULE و تسميه NumberToWrod و تقوم بعمل اللازم بعد ذلك و الكود هو [B][SIZE=6][B][SIZE=3]Function ConvertCurrencyToEnglish(ByVal mynumber) Dim Temp Dim Dollars, Cents Dim DecimalPlace, Count ReDim Place(9) As String Place(2) = " Thousand " Place(3) = " Million " Place(4) = " Billion " Place(5) = " Trillion " ' Convert MyNumber to a string, trimming extra spaces. If Not mynumber = Null Then mynumber = Trim(Str(mynumber)) End If ' Find decimal place. DecimalPlace = InStr(mynumber, ".") ' If we find decimal place... If DecimalPlace > 0 Then ' Convert cents Temp = Left(Mid(mynumber, DecimalPlace + 1) & "00", 2) Cents = ConvertTens(Temp) ' Strip off cents from remainder to convert. mynumber = Trim(Left(mynumber, DecimalPlace - 1)) End If Count = 1 Do While mynumber <> "" ' Convert last 3 digits of MyNumber to English dollars. Temp = ConvertHundreds(Right(mynumber, 3)) If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars If Len(mynumber) > 3 Then ' Remove last 3 converted digits from MyNumber. mynumber = Left(mynumber, Len(mynumber) - 3) Else mynumber = "" End If Count = Count + 1 Loop ' Clean up dollars. Select Case Dollars Case "" Dollars = "Zero Dirham" Case "One" Dollars = "One Dirham" Case Else Dollars = Dollars & " Dirhams" End Select ' Clean up cents. Select Case Cents Case "" Cents = " And Zero Fils Only." Case "One" Cents = " And One Fils Only." Case Else Cents = " And " & Cents & " Fils Only." End Select ConvertCurrencyToEnglish = Dollars & Cents End Function Private Function ConvertHundreds(ByVal mynumber) Dim Result As String ' Exit if there is nothing to convert. If Val(mynumber) = 0 Then Exit Function ' Append leading zeros to number. mynumber = Right("000" & mynumber, 3) ' Do we have a hundreds place digit to convert? If Left(mynumber, 1) <> "0" Then Result = ConvertDigit(Left(mynumber, 1)) & " Hundred " End If ' Do we have a tens place digit to convert? If Mid(mynumber, 2, 1) <> "0" Then Result = Result & ConvertTens(Mid(mynumber, 2)) Else ' If not, then convert the ones place digit. Result = Result & ConvertDigit(Mid(mynumber, 3)) End If ConvertHundreds = Trim(Result) End Function Private Function ConvertTens(ByVal MyTens) Dim Result As String ' Is value between 10 and 19? If Val(Left(MyTens, 1)) = 1 Then Select Case Val(MyTens) Case 10: Result = "Ten" Case 11: Result = "Eleven" Case 12: Result = "Twelve" Case 13: Result = "Thirteen" Case 14: Result = "Fourteen" Case 15: Result = "Fifteen" Case 16: Result = "Sixteen" Case 17: Result = "Seventeen" Case 18: Result = "Eighteen" Case 19: Result = "Nineteen" Case Else End Select Else ' .. otherwise it's between 20 and 99. Select Case Val(Left(MyTens, 1)) Case 2: Result = "Twenty " Case 3: Result = "Thirty " Case 4: Result = "Forty " Case 5: Result = "Fifty " Case 6: Result = "Sixty " Case 7: Result = "Seventy " Case 8: Result = "Eighty " Case 9: Result = "Ninety " Case Else End Select ' Convert ones place digit. Result = Result & ConvertDigit(Right(MyTens, 1)) End If ConvertTens = Result End Function Private Function ConvertDigit(ByVal MyDigit) Select Case Val(MyDigit) Case 1: ConvertDigit = "One" Case 2: ConvertDigit = "Two" Case 3: ConvertDigit = "Three" Case 4: ConvertDigit = "Four" Case 5: ConvertDigit = "Five" Case 6: ConvertDigit = "Six" Case 7: ConvertDigit = "Seven" Case 8: ConvertDigit = "Eight" Case 9: ConvertDigit = "Nine" Case Else: ConvertDigit = "" End Select[/SIZE] [SIZE=3]End Function[/SIZE][/B][/SIZE][/B]
    1 point
  19. تفضل سيتم تنفيد الكود الخاص بكل ورقة عمل عند التغيير في احدى خلايا تاريخ البداية او النهاية سواءا في ورقة 4 او 10 في module جديد انسخ الاكواد التالية Sub test1() '********************************* تقرير الاصناف Dim Sh As Worksheet: Set Sh = Sheet4 Dim Sh1 As Worksheet: Set Sh1 = Sheet6 Dim Sh2 As Worksheet: Set Sh2 = Sheet8 b = Sh1.Name: C = Sh2.Name With Application .ScreenUpdating = False .Calculation = xlManual End With Set V1 = Sh1.Range("$H$9:$H$1000"): Set V4 = Sh2.Range("$H$9:$H$1000") Set V2 = Sh1.Range("$B$9:$B$1000"): Set V5 = Sh2.Range("$B$9:$B$1000") Set V3 = Sh1.Range("$E$9:$E$1000"): Set V6 = Sh1.Range("$E$9:$E$1000") With Range("G9:G" & Range("C" & Rows.Count).End(3).Row) .Formula = "=SUMIFS('" & b & "'!" & V1.Address & ",'" & b & "'!" & V2.Address & ","">=""&$F$7,'" & b & "'!" & V2.Address & ",""<=""&$I$7,'" & b & "'!" & V3.Address & ",C9)" .Value = .Value With Range("H9:H" & Range("C" & Rows.Count).End(3).Row) .Formula = "=SUMIFS('" & C & "'!" & V4.Address & ",'" & C & "'!" & V5.Address & ","">=""&$F$7,'" & C & "'!" & V5.Address & ",""<=""&$I$7,'" & C & "'!" & V6.Address & ",C9)" .Value = .Value End With End With With Application .ScreenUpdating = True .Calculation = xlAutomatic End With End Sub Sub test2() '************************ 'الجرد الشهري Dim MyRng As Range Dim Sh As Worksheet: Set Sh = Sheet10 Dim Sh1 As Worksheet: Set Sh1 = Sheet6 Dim Sh2 As Worksheet: Set Sh2 = Sheet8 b = Sh1.Name: C = Sh2.Name Set MyRng = Sh.Range("A9:M44") With Application .ScreenUpdating = False .Calculation = xlManual End With Set V1 = Sh1.Range("$H$9:$H$1000"): Set V4 = Sh2.Range("$H$9:$H$1000") Set V2 = Sh1.Range("$B$9:$B$1000"): Set V5 = Sh2.Range("$B$9:$B$1000") Set V3 = Sh1.Range("$E$9:$E$1000"): Set V6 = Sh1.Range("$E$9:$E$1000") With Range("H9:H44") .Formula = "=SUMIFS('" & b & "'!" & V1.Address & ",'" & b & "'!" & V2.Address & ","">=""&$E$5,'" & b & "'!" & V2.Address & ",""<=""&$G$5,'" & b & "'!" & V3.Address & ",C9)" .Value = .Value With Range("J9:J44") .Formula = "=SUMIFS('" & C & "'!" & V4.Address & ",'" & C & "'!" & V5.Address & ","">=""&$E$5,'" & C & "'!" & V5.Address & ",""<=""&$G$5,'" & C & "'!" & V6.Address & ",C9)" .Value = .Value End With End With MyRng.Replace 0, "", xlWhole With Application .ScreenUpdating = True .Calculation = xlAutomatic End With End Sub في حدث ورقة 4 Private Sub Worksheet_Change(ByVal Target As Range) Dim Lr As Long Application.ScreenUpdating = False Set V1 = Sheet4: Set V2 = Sheet10: Set V3 = Sheet11 Lr = V1.Range("C" & Rows.Count).End(xlUp).Row V2.Range("F9:F" & Lr).Value = V1.Range("F9:F" & Lr).Value V3.Range("F9:F" & Lr).Value = V1.Range("L9:L" & Lr).Value V3.Range("H9:H" & Lr).Value = V1.Range("O9:O" & Lr).Value If Intersect(Target, Range("F7:i7")) Is Nothing Then Exit Sub On Error Resume Next Application.EnableEvents = False Call test1 Application.EnableEvents = True On Error GoTo 0 Application.ScreenUpdating = True End Sub في حدث ورقة 10 Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next Application.ScreenUpdating = False If Intersect(Target, Range("E5:G5")) Is Nothing Then Exit Sub Application.EnableEvents = False Call test2 Application.EnableEvents = True On Error GoTo 0 End Sub
    1 point
  20. محاولة في المرفقات... مخطط جلوس.xlsb
    1 point
  21. فكرة جميلة وتحد رائع 😊 بالنسبة لي جار العمل وهذا هو الحد الذي وصلت إليه ( ولازال العمل مستمر ... لا يزال يحتاج لتطوير ) : تحدي جميل تعلمت من خلاله كيفية تحريك الخطوط 👍😉
    1 point
  22. دائماً مبدع أستاذنا الكبير ياسر , تبارك الله مجهود رائع جعله الله فى ميزان حسناتك وأكرمك الله وموضوع مهم للجميع جزاك الله خير الثواب
    1 point
  23. تفضل هذا الملف .على الرغم ان كان عليك من البداية رفع ملف بالمشاركة فلا تعنى أى مشاركة شيء بدون ملف يدعمها Colored.xlsb
    1 point
  24. السلام عليكم بها نبدأ أى مشاركة -بما انك لم تقم برفع ملف -فيمكنك استخدام هذا الكود لطلبك: Sub ColorCompanyDuplicates() Dim xRg As Range Dim xTxt As String Dim xCell As Range Dim xChar As String Dim xCellPre As Range Dim xCIndex As Long Dim xCol As Collection Dim i As Long On Error Resume Next If ActiveWindow.RangeSelection.Count > 1 Then xTxt = ActiveWindow.RangeSelection.AddressLocal Else xTxt = ActiveSheet.UsedRange.AddressLocal End If Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8) If xRg Is Nothing Then Exit Sub xCIndex = 2 Set xCol = New Collection For Each xCell In xRg On Error Resume Next If xCell.Value <> "" Then xCol.Add xCell, xCell.Text If Err.Number = 457 Then xCIndex = xCIndex + 1 Set xCellPre = xCol(xCell.Text) If xCellPre.Interior.ColorIndex = xlNone Then xCellPre.Interior.ColorIndex = xCIndex xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex ElseIf Err.Number = 9 Then MsgBox "Too many duplicate companies!", vbCritical, "Kutools for Excel" Exit Sub End If On Error GoTo 0 End If Next End Sub
    1 point
  25. بارك الله فيك وزادك الله من فضله -جمعة مباركة ان شاء الله
    1 point
  26. أحسنت استاذنا الكريم عمل ممتاز جعله الله فى ميزان حسناتك وبارك الله فيك
    1 point
  27. أحسنت استاذنا الكريم وبارك الله فيك جهود ممتازة جعله الله فى ميزان حسناتك
    1 point
  28. عمل ممتاز أستاذ حسونة بارك الله فيك وزادك الله من فضله
    1 point
  29. وعليكم السلام بالتأكيد بارك الله فيك حل ممتاز جزاك الله كل خير
    1 point
  30. أحسنت استاذ مجدى عمل رائع جعله الله فى ميزان حسناتك ورحم والديك وغفر الله لهما
    1 point
  31. وعليكم السلام تفضل إستدعاء بيانات من مصنف اخر ضمن نفس المسار.rar
    1 point
  32. عشان اليوم 24 ساعة ولكى يكون الناتج كرقم وليس كوقت
    1 point
  33. وعليكم السلام كان عليك برفع ملف من الأول ولكن قمت بعمل الملف لك تفضل قيمة الساعات الإضافية.xlsm
    1 point
×
×
  • اضف...

Important Information