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

سليم حاصبيا

أوفيسنا
  • Posts

    8,723
  • تاريخ الانضمام

  • Days Won

    262

كل منشورات العضو سليم حاصبيا

  1. صباح الثورة من بيروت/صيدا/النبطية/صور /طرابلس .....ومن كل شبر من أرض لبنان الحبيب ربما ينفذ هذا الماكرو ما تريده للتحكم بالاعمدة التي لا تريد اظارها يمكن معالجة ذلك من خلال تغيير المعطيات في الكود (ما بين علامات ++++++) Option Explicit Sub get_data_new() Application.ScreenUpdating = False Dim S As Worksheet Dim Cus As Worksheet Dim m%: m = 3 Dim LG Dim R% Set S = Sheets("Summary") With S .Cells.Clear For Each Cus In Sheets If Cus.Name Like "Customer" & "#" Then R = Cus.Range("B9").CurrentRegion.Rows.Count Cus.Range("B9").CurrentRegion.Copy .Cells(m, 1) With .Cells(m - 1, 1) .Value = Cus.Name .Interior.ColorIndex = 6 End With LG = .Cells(Rows.Count, "g").End(3).Row With .Cells(LG + 1, 6).Resize(, 2) .Columns(1) = "SUM:" .Columns(2).Formula = _ "=SUM(G" & m + 1 & ":G" & LG & ")" .Interior.ColorIndex = 3 .Font.Color = vbWhite .Value = .Value End With m = m + R + 2 End If Next Cus '+++++++++++++++++++++++++++++ .Range("C:C,D:D,H:H").EntireColumn.Delete '+++++++++++++++++++++++++++++ .Range("E:E").NumberFormat = "#,##0" End With Application.ScreenUpdating = True End Sub الملف بعد التعديل My project_SALIM.xlsm
  2. تمت الاجابة على هذا العنوان https://www.officena.net/ib/topic/97282-ارجو-المساعدة-فى-فى-ترقيم-هذا-الملف/
  3. هذه المعادلة في الحلية C4 واسحب نزولاً =MAX($A$4:$A$10000)+ROWS($C$4:C4)
  4. اختصار بسيط للكود الوارد سابقاً Option Explicit Sub test_1() Dim slash$: slash = "-" Dim x%, k%: k = 6 Range("G6:G" & Rows.Count).ClearContents Do Until Range("D" & k) = vbNullString x = InStrRev(Range("D" & k), slash) If x Then Range("G" & k) = Replace(Range("D" & k), " ", 1, x + 1) End If k = k + 1 Loop End Sub
  5. اذا اردتها بواسطة الماكرو الكود Option Explicit Sub test() Dim slash$: slash = "-" Dim x%: x = 1 Dim k%: k = 6 Dim st Range("G6").CurrentRegion.ClearContents Do Until Range("D" & k) = vbNullString st = Range("D" & k) Do Until x = 0 x = InStr(st, slash) If x Then st = Replace(st, " ", 1, x + 1) Loop Range("G" & k) = st k = k + 1 x = 1 Loop End Sub
  6. بعد اذن اخي العيدروس هذه المعادلة (Ctrl+Shift+Enter) =IFERROR(--MID(D6,MAX(IF(MID(D6,ROW(INDIRECT("1:"&LEN(D6))),1)="-",ROW(INDIRECT("1:"&LEN(D6)))+1)),LEN(D6)),"") Booook1.xlsx
  7. ممكن هذا الماكرو لمختلف الحلات دون التقيد بعدد الحروف حيث يبدأ البحث Option Explicit Sub Extract_Date_Please() Dim i%: i = 1 Range("C1").CurrentRegion.ClearContents Do Until Range("A" & i) = vbNullString Call SPLIT_ME _ (Range("a" & i), "\D+-\d+-\d+\s+?\d+:\d+", i, 3) i = i + 1 Loop End Sub '+++++++++++++++++++++++++++++++ Sub SPLIT_ME(c As Range, pttrn As String, k%, m%) With CreateObject("VBscript.RegExp") .Global = True: .MultiLine = True .IgnoreCase = False: .Pattern = pttrn If Not .Test(c.Value) Then Exit Sub Cells(k, m) = .Execute(c.Value)(0) m = m + 1 End With End Sub مثال للتوضيح في الملف المرفق Extract_dates.xlsm
  8. يا اخي هات كل طلباتك دفعة واحدة وليس بالتقسيط لقد اجبتك على سؤال (جمع عمود الكمية) في المعادلة التي كتبتها لك Subtotal 1-لحساب المتوسط استبدل الرقم 109 بالرقم 101 2-لحساب العدد استبدل الرقم 109 بالرقم 103 3-لحساب الحد الاقصى استبدل الرقم 109 بالرقم 104 4-لحساب الحد الادنى استبدل الرقم 109 بالرقم 105
  9. لم افهم ماذا تريد بالضبط لذلك اقترحت ثلاثة حلول 1-ما هو موجود في الجدول الاول وليس في الثاني 2-ما هو موجود في الجدول الثاني وليس في الاول 3- المشترك بين الجدولين Compaire.xlsx
  10. بعد اذن الاخ العيدروس هذا الماكرو Sub Dont_SHow_empty() show_all Range("C3").Formula = "=""""" Range("L3").Formula = "=OR(E4<>""--"",F4<>""--"")" Range("C3").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, _ CriteriaRange:=Range("L2:L3") Range("L2:L3").Clear Range("C3").Clear End Sub '======= Sub show_all() On Error Resume Next ActiveSheet.ShowAllData On Error GoTo 0 End Sub الملف مرفق my_book.xlsm
  11. جرب هذه المعادلة =IF(SUMPRODUCT($B$5:B5)>$B$1,"",SUM(B5,-C5)) taksim.xlsm
  12. استاذي أحمد لا حاجة لهذا الكود الطويل المفصل بالنسبة لابجدة الجدول كما ان عمليات SELECT ترهق الاكسل بدون فائدة (الرجاء قدر الامكان الاستغناء عنها) يكفي هذا الكود الخفيف Sub sort_me() Range("A1").CurrentRegion.Sort _ key1:=Range("A1"), Order1:=1, Header:=2 End Sub
  13. بعد اذن الاخ عبدالله هذا الكود Sub test_please() Range("A1").CurrentRegion.Offset(, 1).ClearContents i = 1 Do Until Range("A" & i) = vbNullString Call SPLIT_ME _ (Range("a" & i), "(\D)(\d{4})[0]+(\d{3})(\d{3})", i, 2) i = i + 1 Loop End Sub '+++++++++++++++++++++++++++++++ Sub SPLIT_ME(c As Range, pttrn As String, ByVal k%, m%) With CreateObject("VBscript.RegExp") .Global = True .MultiLine = True .IgnoreCase = False .Pattern = pttrn If Not .Test(c.Value) Then Exit Sub Set Results = .Execute(c.Value) For i = 0 To Results(0).Submatches.Count - 1 Cells(k, m) = Results(0).Submatches(i) m = m + 1 Next End With End Sub الملف مرفق Split_cells.xlsm
  14. تم التعديل على الملف ليعطيك الاسم (او عدة اسماء تبدأ بحرف او حروف معينة) الصفحة Salim من هذا الملف Saerch_by_Name.xlsx
  15. ما هي اداة البحث التي تريد ان تشغلها الصّف او اسم التلميذ على كل حال جرب هذا الملف st_by_class.xlsx
  16. الشرط يقول ان اي خلية على يسارها رقم 1 يتم تلوينها
  17. استاذ حسين لا افهم ما لزوم الحلقة التكرارية يكفي هذا الماكرو Option Explicit Sub Go_To() On Error Resume Next Sheets(Sheets("رئيسي").[D5].Value).Select End Sub
  18. معليش ورد خطأ بسيط في المعادلة المعادلة الصحيحة =DATEDIF(G4,H4,"y")&" "&"Years"&" "&DATEDIF(G4,H4,"ym")&" "&"Months"&" "&DATEDIF(G4,H4,"MD")&" "&"Days"
  19. استعمل هذه المعادلة في الخلية B22 واسحب نزولاً =SUMPRODUCT(--($A$4:$A$18=$A22),$B$4:$B$18)
×
×
  • اضف...

Important Information