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

كل الانشطه

هذه الصفحة تحدث تلقائياً

  1. الساعة الأخيرة
  2. تم التعديل الكود حاليا يقوم بحذف اي صور من النطاق a2:v2 قبل ادراج الصورة الجديدة حتى لا تتراكم الصور فوق بعضها كذلك تم تعديل اسم الصورة ومكانها على الجهاز بحيث يمكنك احتيار اي صورة وباي اسم وباي امتداد من الجهاز ويمكنك اضافة اي امتداد اخر غير مدرج بالكود .Filters.Add "جميع الصور", "*.jpg; *.jpeg; *.png; *.bmp; *.gif; *.tiff" تم استتناء ورقة3-ورقة6 من ادراج الصور ويمكنك استتناء المزيد وذلك باظافة اسم الورقة بالكود من الجزء For Each ws In Worksheets If ws.Name <> "ورقة3" And ws.Name <> "ورقة6" Then ادراج صورة (2).xlsm
  3. وعليكم السلام أ. عبد الله بارك الله فيك ونفعنا بعلمك تحياتى
  4. عاشت ايدك وبارك الله بيك وبجهودك استاذ احتاج ان يعمل الكود على كل صفحات الملف مثلا 10صفحات ويضيف الصوره فيها مهما كان امتدادها ما عدا صفحات التي تكون باسم ورقة3 وورقة6 لا يضيف الصوره فيها مع جزيل الشكر لمجهودك
  5. Today
  6. السلام عليكم يوجد بعض الاختلاف بين الكودين في التفكيك الكود الأول: يمر على الخلايا خلية خلية ويضع الناتج في الشيت مباشرة باستخدام التكرار For...Next . الكود المعدل: يقوم بنفس التفكيك بواسطة رمز الفصل * ولكنه يحمل النتائج في مصفوفة بالذاكرة (dataArr) ثم ينسخها دفعة واحدة. بالنسبة للتجربة لدي الكود يستغرق اقل من ثانية اما الكود الاصلي حوالي 6 ثانية تم اظافة حساب الزمن للكود وتم تعديل الكود في الكود التلقائي وفي كل الاحوال مواصفات الجهاز وغيرها من الامور الفنية لها علاقة بالسرعة وفي حالة الزمن متساو لديك في الكودين القديم والمعدل فلك الخيار في اختيار احدهما ف 6 ثواني ليست بالوفت الطويل اليك الملف وبه التعديل شهادات1.xlsb
  7. أ. عبد الله .. قمت بتجربه سريعة الكود بزر يعمل جيدا بوقت يقارب الكود الأصلي حوالى 6.35 ثانيه , وتقريبا هو الكود الأصلى بتفاصله دون اختلاف أما كود الإستدعاء التلقائى فبه مشاكل كثيرة كأعمده النتائج والإجماليات وإخفاء اعمده فارغة و تنسيق أعمد ممتلئة وايضا نتائج التواريخ خاطئة وغير ذلك. شكرا على المحاوله والمجهود .. تحياتى
  8. شكراً على مجهودك ووقتك أ. عبد الله بشير
  9. سيكون الحل بطريقتين حسب استخدامك للملف إذا كنت تقوم بفلترة العمود الأول (عمود1) يدوياً ليظهر فقط التواريخ من 8 إلى 11: استخدم المعادلة =SUMPRODUCT(SUBTOTAL(109; OFFSET(I8:I100; ROW(I8:I100)-ROW(I8); 0; 1)); --(H8:H100=E4)) وإذا أردت حصر الجمع تلقائياً بين تاريخين دون الاعتماد على الفلترة اليدوية استخدم المعادلة =SUMIFS(I8:I100; H8:H100; E4; G8:G100; ">=08-يوليه"; G8:G100; "<=11-يوليه") واليك المعادلتان في ملف واحد واختر ما يناسب طلبك جمع القيم لشخص مع الفلترة.xlsx
  10. استاذنا الفاضل دا ملف فيه المطلوب ارجو ان اكون وفقت جمع القيم لشخص مع الفلترة.xlsx
  11. نعم يمكن ذلك استبدل الكود السابق بهذا Sub Comm() Dim ws As Worksheet Dim pic As Object Dim rng As Range On Error Resume Next Application.CommandBars.FindControl(ID:=549).Execute On Error GoTo 0 For Each ws In Worksheets Set rng = ws.Range("A2:V2") Set pic = ws.Pictures.Insert("D:\عنوان.jpg") pic.ShapeRange.LockAspectRatio = msoFalse With pic .Top = rng.Top .Left = rng.Left .Width = rng.Width .Height = rng.Height .Placement = xlMoveAndSize End With Next ws End Sub السطر Application.CommandBars.FindControl(Id:=549).Execute هذا السطر يفعل أمر "الانطباق على الشبكة" (Snap to Grid) كما في طلبك ادراج صورة (1).xlsm
  12. وعليكم السلام ورحمة الله وبركاته لو ارفقت ملفك لاختصرت الكثير من الشرح والوقت ولكن اوضح باختصار اذا اردت استعمال معادلة sumif بالجدول يجب اظافة عمود مساعد خارج الجدول وضع به المعادلة =SUBTOTAL(103, A2) ثم اربطها معادلة sumif او يمكنك استعمال بديل sumif معادلة اخرى لا تحتاج عمود مساعد مثل SUMPRODUCT و SUBTOTAL وجود الملف يوضح المعادلة المناسبة لطلبك
  13. وعليكم السلام ورحمة الله وبركاته اليك التعديل والكود في الملف المرفق تلقائي حيث يتم استدغاؤه بدل كتابة الكود بالكامل وكذلك بزر مرتبطا بزر جلب البيانات اعتقد ان الكود اسرع ويحتاج الامر منك الى التاكد من النتائج لانه يوجد العديد من الاوامر بالكود الاصلي تحتاج الى وقت للتاكد من النتائج في حالة عدم توافق النتائج ارجو تحديد الجزء او الاجزاء الغير متوافقه مع تحديد الحلايا والشيتات في انتظار تنتائج تجربتك للكود شهادات1.xlsb
  14. السلام عليكم ورحمة الله وبركاته بع اذن حضراتكم عايز اطبق معادلة sumif عند فلترة الجدول بحيث اعرف مجموع قيمة شئ محدد وانا عامل فلتر وتصفية علي الجدول ولكم مني جزيل الشكر
  15. الفكرة جميلة ، والتنفيذ سليم بنسبة كبيرة . وقد كان لي تطرق سابق لفكرة مشابهة ولكن على عكسك تماماً . حيث كانت تجربتي من خلال أداة كاسر ملفات آكسيس Accde - واستخراج محتوى قواعد البيانات نسخة 32 | نسخة 64 . إلا أن فكرتك قابلة للإختراق والكسر لأسف . شكراً لك على مجهودك
  16. شكرا علي مجهودك الرائع بس للاسف البرنامج محتاج تفعيلوحضرتك منزله من غير تفعيل لا للحماية ةلا لفك الحماية بكس اسف
  17. شكراً جزيلاً استاذ الله يحفظك ويجعلها بميزان حسناتك ويبارك بيك فضلا وليس امرا احتاج ان ضيف خاصيه انطباق على الشبكة وان يكون ابعاد الصوره من A2 الى V2 هل يمكن ذلك كما موضح بالصوره مع جزيل الشكر والتقدير لجهودك
  18. Yesterday
  19. أ. عبد الله بشير .. السلام عليكم , وشكراً لإهتمامك مرفق الملف , أما عن الكود فهو كود تلقائى وآخر نفس التكوين بزر شهادات.xlsb
  20. وعليكم السلام ورحمة الله وبركاته ارفق ملفا به بيانات لتتم تجربة اي كود معدل علية ومقارنته بالكود الاصلي من حيث السرعة وخصوصا لا نعلم حجم البيانات بالملف ومن خلال اطلاعي على الكود اعتقد يمكن زيادة سرعته بشكل كبير باستخذام المصفوفات بالذاكرة وكذلك بدل النسخ واللصق للقيم يتم النقل المباشر للقيم Value = .Value فوجود الملف مهم للتجربة ولعمل افضل حل لطلبك
  21. السلام عليكم ورحمة الله وبركاته تحياتي لك ولاستاذنا Foksh مشكلة الملف به امتددان ادراج صورة.xlsm.xlsx بحذف الامتداد xlsx يعمل الملف لاظافة الخاصية المطلوبة اولا يجب حذف كلمة Private ليصبح اسم الكود Sub Comm() ثانيا يجب أن تكون الصورة موجودة بالفعل داخل القرص D بهذا الاسم بالضبط (عنوان.jpg) ثالتا امتداد الملف هو jpg وليس png أو jpeg؛ لأن عدم تطابق الامتداد سيتسبب في ظهور خطأ عند تشغيل الكود. في حال تغير مكان الضورة او امتدداها قم بالتعديل بالكود اليك الكود بعد اظافة الخاصية xlMoveAndSize نقل الخلايا وتغيير حجمها Sub Comm() Dim ws As Worksheet Dim pic As Object For Each ws In Worksheets Set pic = ws.Pictures.Insert("D:\عنوان.jpg") pic.Placement = xlMoveAndSize Next ws End Sub ادراج صورة.xlsm
  22. كم لونًا يجب استخدامه في التصميم؟ من الأفضل استخدام 2 إلى 3 ألوان فقط لتجنب التشتت البصري.
  23. وعليكم السلام ورحمة الله وبركاته .. يظهر الخطأ التالي عند محاولة فتح ملفك المرفق في الاصدار 2019 وفي الإصدار 2010
  24. السلام عليكم شلونكم بدون زحمة اريد ان اضيف خاصيه الى الصوره المدرجة من خلال الكود كما هو موضح بالصورة المرفقة مع جزيل الشكر والتقدير Private Sub Comm() Dim ws As Worksheet For Each ws In Worksheets ws.Pictures.Insert ("D:\عنوان.jpg") Next End Sub ادراج صورة.xlsm.xlsx
  25. سؤال.. هل يوجد لديكم شريط ريبون في اي مشروع يقوم بعرض قائمة منسدلة ؟ وما هي المشاكل التي قد تواجه المستخدم في ضبط كومبوبوكس على سبيل المثال ؟؟ وهل له استخدام محدد في مشروعك ؟؟؟
  26. السلام عليكم ورحمة الله وبركاته لدى كود جيد ويؤدى وظيفتة بدقه وهو يتعامل مع ثلاث أوراق طلبى هو زيادة سرعته فهو يأخذ حوالى 7 ثوانى فى تنفيذ مهامه شكراً لكم وبالتوفق 'كود جلب بيانات Private Sub Worksheet_Change(ByVal Target As Range) If Cells(4, 2).Value = "ON" Then ' لإيقاف وتشغيل الكود Dim ws As Worksheet, tbl As Long, tmp As Long, i As Long Dim n As String, Max As Long, ky As Boolean Max = 461 If Not Intersect(Target, Range("D2,D4,B4,B7")) Is Nothing Then Set ws = Sheets("حساب الفوائد") Set SA = Sheets("مؤشر الفائدة") Set SB = Sheets("P") '------------------------------------------------------------------------------------------ 'استخراج البيانات المطلوبة من بيانات الشهادات 'On Error Resume Next Application.ScreenUpdating = False Application.Calculation = xlCalculationAutomatic SA.Range("BH2") = 2 'مسح البيانات من منطقة منطقة عرض البيانات SA.Range("D6:BC207").ClearContents ws.Range("DN26:FA225").ClearContents ws.Range("FG26:HF225").ClearContents '-------------------------------------------------------------------------------------------------- 'فك البيانات Application.ScreenUpdating = False Dim sp As Variant, j&, lr& With Application .ScreenUpdating = False: .Calculation = xlCalculationManual .ErrorCheckingOptions.BackgroundChecking = True End With lr = ws.Cells(ws.Rows.Count, "DK").End(xlUp).Row For j = 26 To lr sp = Split(ws.Cells(j, "DK").Value2, "*") For i = LBound(sp) To UBound(sp) ws.Cells(j, i + 118).NumberFormat = "@" ws.Cells(j, i + 118).Value = sp(i) Next i Next j With Application .ScreenUpdating = True: .Calculation = xlCalculationAutomatic .ErrorCheckingOptions.BackgroundChecking = False End With '------------------------------------------------------------------------------------------- 'نسخ البيانات المفككة إلى إلى ورقة عرض البيانات Application.ScreenUpdating = False ws.Range("DN26:FA225").SpecialCells(xlCellTypeVisible).COPY ws.Range("FL26:GY225").PasteSpecial xlPasteValues '--------------------------------------------------------------------------------------------- 'معادلة لضرب عدد الأشهر فى قيمة الفائدة الشهرية If SA.Range("BJ4") = 33 Then ws.Range("FL26:GY26") = ws.Range("FL25:GY25").Formula ws.Range("FL26:GY26").AutoFill Destination:=ws.Range("FL26:GY225"), Type:=xlFillDefault End If '----------------------------------------------------------------------------------------------- Application.ScreenUpdating = False 'معادلات لتكون صفحة العرض بلا معادلات If SA.Range("BJ4") = 33 Or SA.Range("BJ4") <> 33 Then ws.Range("FG26:FK225") = ws.Range("FG25:FK25").Formula ws.Range("FG26:FK225") = ws.Range("FG26:FK225").Value ws.Range("GZ26:HF225") = ws.Range("GZ24:HF24").Formula ws.Range("GZ26:HF225") = ws.Range("GZ26:HF225").Value SA.Range("D7:H7") = ws.Range("FG24:FK24").Value SA.Range("F4:H6") = ws.Range("FI21:FK23").Value SA.Range("AW6:BC7") = ws.Range("GZ22:HF23").Value End If ' ----------------------------------------------------------------------------------------------- ws.Range("FL24:GY24").SpecialCells(xlCellTypeVisible).COPY SA.Range("I7:AV7").PasteSpecial xlPasteValues ws.Range("FG26:HF225").SpecialCells(xlCellTypeVisible).COPY SA.Range("D8:BC207").PasteSpecial xlPasteValues ' ----------------------------------------------------------------------------------------------- Application.ScreenUpdating = False SB.Range("D8:L208").ClearContents SA.Range("D6:H207").SpecialCells(xlCellTypeVisible).COPY SB.Range("D7:H208").PasteSpecial xlPasteValues SA.Range("F4:H6").SpecialCells(xlCellTypeVisible).COPY SB.Range("F5:H7").PasteSpecial xlPasteValues ws.Range("HI25:HL225").SpecialCells(xlCellTypeVisible).COPY SB.Range("I8:L208").PasteSpecial xlPasteValues SA.Range("J5") = SA.Range("BQ5").Value ' ----------------------------------------------------------------------------------------------- 'لإخفاء الأعمده الفارغة Application.ScreenUpdating = False For s = 9 To 54 If Cells(7, s).Value = "" Then Columns(s).EntireColumn.Hidden = True Else Columns(s).EntireColumn.Hidden = False End If Next s 'إحتواء منسب الأعمده For s = 9 To 54 If Cells(7, s).Value <> "" Then Columns(s).AutoFit End If Next s '------------------------------------------------------------------------------------------ 'لتغير الخطوط Application.ScreenUpdating = False If Sheets("مؤشر الفائدة").Range("B7") = 1 Then Sheets("مؤشر الفائدة").Range("AY8:AY207, BB8:BB208,BR2:BR4").Select With Selection.Font .Name = "Wingdings 3" .Size = 14 Selection.HorizontalAlignment = xlCenter End With End If If Sheets("مؤشر الفائدة").Range("B7") = 2 Then Sheets("مؤشر الفائدة").Range("AY8:AY207, BB8:BB208,BR2:BR4").Select With Selection.Font .Name = "Arial" .Size = 16 Selection.Font.Bold = True Selection.HorizontalAlignment = xlCenter End With End If If Sheets("مؤشر الفائدة").Range("B7") = 3 Then Sheets("مؤشر الفائدة").Range("AY8:AY207, BB8:BB208,BR2:BR4").Select With Selection.Font .Name = "Arial" .Size = 16 Selection.HorizontalAlignment = xlCenter End With End If Application.ScreenUpdating = False '----------------------------------------------------------------------------------------- ' لتلوين برواز الخلية ALP Application.ScreenUpdating = False If SA.Range("BJ6") = 5 Then SA.Range("AZ6").Select With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .Color = -10839132 End With With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .Color = 0 End With End If If SA.Range("BJ6") <> 5 Then SA.Range("AZ6").Select With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .Color = 0 With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .Color = -10839132 End With End With End If ' ------------------------------------------------------------------------------------------------ 'P للتنسيق فى ورقة Sheets("P").Select Application.ScreenUpdating = False If Sheets("P").Range("I8") = "إجمــاليــات" Then Sheets("P").Range("$I$9:$J$208").Select With Selection.Font Selection.HorizontalAlignment = xlRight Selection.NumberFormat = "#,##0.00" Sheets("P").Range("$I$7:$J$208").Select Selection.Columns.AutoFit Sheets("P").Range("$K$8").Select Selection.Columns.Hidden = False End With Sheets("P").Range("D8").Select End If If Sheets("P").Range("I8") = "عدد" Then Sheets("P").Range("$I$9:$J$208").Select With Selection.Font Selection.HorizontalAlignment = xlCenter Selection.NumberFormat = "General" Sheets("P").Range("$I$8:$K$208").Select Selection.Columns.AutoFit Sheets("P").Range("$K$8").Select Selection.Columns.Hidden = True End With Sheets("P").Range("D8").Select End If Sheets("مؤشر الفائدة").Select Application.ScreenUpdating = Fals ActiveSheet.Shapes.Range(Array("مستطيل 10")).Select Application.ScreenUpdating = False If Selection.Text = "إخفاء الأعمدة" Then With Selection Selection.Text = "إظهار الأعمدة" .Font.Color = -4072739 .ShapeRange.Fill.ForeColor.RGB = _ RGB(15, 15, 15) .ShapeRange.Line.ForeColor.RGB = _ RGB(169, 158, 103) End With End If End If Sheets("مؤشر الفائدة").Range("I7").Select End If End Sub
  27. السلام عليكم - محتاج شاشة افتتاحية للبرنامج اللي عندي - فعند فتح البرنامج تظهر شاشة جميلة قبل الدخول الى البرنامج وتحتوي على رقم سري ممنون
  28. هل يجب كتابة كل شيء في الشريحة؟ لا، الأفضل استخدام النقاط الرئيسية فقط ودع التقديم عليك.
  1. أظهر المزيد
×
×
  • اضف...

Important Information