بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|

ناصر سعيد
05 عضو ذهبي-
Posts
1963 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
2
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو ناصر سعيد
-
. بارك الله فيك اخي الكريم بن عليه هذه المعادلات لاتعمل جيدا مع اكسيل 2003 =_xlfn.IFERROR(IF(FIND($G$6;AK10);"دورثان");'تحريرى دور ثان'!G10) اريد بديلا لها يصلح .. من فضلك
-
Sub Test() 'هذا الكود للمحترم ياسر العربي 'وتم اضافه وضع المسلسل بواسطه المهذب بن عليه 'حفظهم الله 'الهدف من الكود هو استدعاء بيانات اعمده ' لاعمده متفرقه مع وضع المسلسل توماتيكي '=========== Dim arr As Variant Dim temp As Variant Dim lr As Long Dim i As Long Dim j As Long Dim Main As Worksheet Dim sh As Worksheet Dim targt Set Main = Sheets("رصد الترم الثانى") Set sh = Sheets("بيانات الطلبة (2)") 'خليه البحث targt = sh.Range("D1").Value 'مدى المسح في صفحه الهدف sh.Range("B7:AN1000").ClearContents lr = Main.Cells(Rows.Count, 1).End(xlUp).Row 'مدى الصفحه الرئيسيه المصدر arr = Main.Range("A7:GB" & lr).Value ReDim temp(1 To UBound(arr, 1), 1 To UBound(arr, 2)) j = 1 For i = LBound(arr, 1) To UBound(arr, 1) 'If arr(i, 133) Like targt Then 'رقم عمود البحث If arr(i, 133) Like targt & "*" Then ' رقم عمود المسلسل temp(j, 1) = j 'العمود الاول بعد المسلسل temp(j, 2) = arr(i, 2) 'temp(j, 3) = arr(i, 3) temp(j, 4) = arr(i, 3) temp(j, 5) = arr(i, 141) temp(j, 6) = arr(i, 140) temp(j, 7) = arr(i, 149) temp(j, 8) = arr(i, 150) temp(j, 9) = arr(i, 151) temp(j, 10) = arr(i, 145) temp(j, 11) = arr(i, 142) temp(j, 12) = arr(i, 143) j = j + 1 End If Next i With sh 'خليه بدايه اللصق .Range("A7").Resize(j - 1, UBound(temp, 2)).Value = temp 'مدى المسح في صفحة الهدف .Range("B7:AM" & Rows.Count).Borders.Value = 0 'سطر لاضافة التسطير .Range("A7:P" & .Cells(Rows.Count, 4).End(xlUp).Row).Borders.Value = 1 End With End Sub الهدف من الكود هو استدعاء بيانات اعمده ' لاعمده متفرقه مع وضع المسلسل توماتيكي ================== المحترم بن عليه حاجي4.rar
-
الغاء باسورد شيت الاكسيل بطريقة احترافية بدون برامج
ناصر سعيد replied to aaaamido's topic in منتدى الاكسيل Excel
جزاك الله خيرا وبارك فيك -
ارجو التكرم واكمال كود تفقيط الدرجات لأكثر من ألف درجة
ناصر سعيد replied to الحضرمي2017's topic in منتدى الاكسيل Excel
'صمم بواسطة أ / محمد صالح 10/2/2011 'تم التعديل لإضافة الصفر والنصف 28/4/2015 'تم التعديل للوصول إلى 9999 والسماح بكتابة غ للغياب في 27/11/2017 ' https://a1mas.com Function n2t(d As String) As String If d = "" Or d = "غ" Then n2t = "غ" ElseIf d = 0 Or d > 9999.5 Then n2t = "لا شيء" ElseIf d = 0.5 Then n2t = "فقط نصف درجة" Else o = Int(d / 1000) m = Int(d / 100) - (o * 10) h = Int(d / 10) - (o * 100 + m * 10) a = Int(d - (o * 1000 + m * 100 + h * 10)) k = d - (o * 1000 + m * 100 + h * 10 + a) n2t = num((o), 4) & IIf(o > 0 And (a > 0 Or h > 0 Or m > 0), " و", "") & num((m), 3) & IIf(m > 0 And (a > 0 Or h > 0), " و", "") & num((a), 1) & IIf(a > 0 And h > 1, " و", " ") & num((h), 2) n2t = Replace(n2t, "و ", "و") n2t = Replace(n2t, "اثنتانِ عشرة", "اثنتا عشرة") n2t = Replace(n2t, "وعشرة", "وعشر") n2t = IIf(n2t = " عشرة", "عشر", n2t) n2t = IIf(n2t = "مائتانِ ", "مائتا", n2t) n2t = IIf(n2t = "ألفان ", "ألفا", n2t) n2t = "فقط " & n2t & IIf(h = 0 And a = 2, "درجتانِ", IIf((h = 1 And a = 0) Or ((h = 0 And a > 2)), " درجاتٍ", IIf(h = 0 And a = 0, " درجةٍ", " درجةً"))) & IIf(k > 0, " ونصفٌ", "") n2t = Replace(n2t, "إحدى درجةً", "درجةٌ") n2t = Replace(n2t, "اثنتانِ درجتانِ", "درجتانِ") n2t = Replace(n2t, "مائتانِ درجةٍ", "مائتا درجةٍ") End If n2t = Trim(n2t) End Function Function num(n As Integer, t As Integer) As String o = "ة آلاف" m = "مائة" h = "ونَ" Select Case n Case Is = 1 num = IIf(t = 4, "ألف", IIf(t = 3, m, IIf(t = 2, "عشرة", "إحدى"))) Case Is = 2 num = IIf(t = 4, "ألفان", IIf(t = 3, "مائتانِ", IIf(t = 2, "عشرونَ", "اثنتانِ"))) Case Is >= 3 num = IIf(t = 4, nn(n) & o, IIf(t = 3, nn(n) & m, IIf(t = 2, nn(n) & h, nn(n)))) End Select End Function Function nn(n As Integer) As String Select Case n Case Is = 3 nn = "ثلاث" Case Is = 4 nn = "أربع" Case Is = 5 nn = "خمس" Case Is = 6 nn = "ست" Case Is = 7 nn = "سبع" Case Is = 8 nn = "ثمان" Case Is = 9 nn = "تسع" End Select End Function الكود بعد التعديل للمحترم محمد صالح رزقه الله الرزق الواسع ونحن معه وان يصلح الله حاله وحالنا .. -
لا حرمك الله الاجر وجعله في ميزان حسناتك استاذ محمد صالح 'صمم بواسطة أ / محمد صالح 10/2/2011 'تم التعديل لإضافة الصفر والنصف 28/4/2015 'تم التعديل للوصول إلى 9999 والسماح بكتابة غ للغياب في 27/11/2017 ' https://a1mas.com Function n2t(d As String) As String If d = "" Or d = "غ" Then n2t = "غ" ElseIf d = 0 Or d > 9999.5 Then n2t = "لا شيء" ElseIf d = 0.5 Then n2t = "فقط نصف درجة" Else o = Int(d / 1000) m = Int(d / 100) - (o * 10) h = Int(d / 10) - (o * 100 + m * 10) a = Int(d - (o * 1000 + m * 100 + h * 10)) k = d - (o * 1000 + m * 100 + h * 10 + a) n2t = num((o), 4) & IIf(o > 0 And (a > 0 Or h > 0 Or m > 0), " و", "") & num((m), 3) & IIf(m > 0 And (a > 0 Or h > 0), " و", "") & num((a), 1) & IIf(a > 0 And h > 1, " و", " ") & num((h), 2) n2t = Replace(n2t, "و ", "و") n2t = Replace(n2t, "اثنتانِ عشرة", "اثنتا عشرة") n2t = Replace(n2t, "وعشرة", "وعشر") n2t = IIf(n2t = " عشرة", "عشر", n2t) n2t = IIf(n2t = "مائتانِ ", "مائتا", n2t) n2t = IIf(n2t = "ألفان ", "ألفا", n2t) n2t = "فقط " & n2t & IIf(h = 0 And a = 2, "درجتانِ", IIf((h = 1 And a = 0) Or ((h = 0 And a > 2)), " درجاتٍ", IIf(h = 0 And a = 0, " درجةٍ", " درجةً"))) & IIf(k > 0, " ونصفٌ", "") n2t = Replace(n2t, "إحدى درجةً", "درجةٌ") n2t = Replace(n2t, "اثنتانِ درجتانِ", "درجتانِ") n2t = Replace(n2t, "مائتانِ درجةٍ", "مائتا درجةٍ") End If n2t = Trim(n2t) End Function Function num(n As Integer, t As Integer) As String o = "ة آلاف" m = "مائة" h = "ونَ" Select Case n Case Is = 1 num = IIf(t = 4, "ألف", IIf(t = 3, m, IIf(t = 2, "عشرة", "إحدى"))) Case Is = 2 num = IIf(t = 4, "ألفان", IIf(t = 3, "مائتانِ", IIf(t = 2, "عشرونَ", "اثنتانِ"))) Case Is >= 3 num = IIf(t = 4, nn(n) & o, IIf(t = 3, nn(n) & m, IIf(t = 2, nn(n) & h, nn(n)))) End Select End Function Function nn(n As Integer) As String Select Case n Case Is = 3 nn = "ثلاث" Case Is = 4 nn = "أربع" Case Is = 5 nn = "خمس" Case Is = 6 nn = "ست" Case Is = 7 nn = "سبع" Case Is = 8 nn = "ثمان" Case Is = 9 nn = "تسع" End Select End Function الكود بعد التعديل للمحترم محمد صالح رزقه الله الرزق الواسع ونحن معه وان يصلح الله حاله وحالنا .. ===== =n2t(A1) هذه الجمله هي التي تكتب في صفحه ااكسيل وتكتب الارقام في الخليه A1 على سبيل المثال اخي الكريم انه يقرب الارقام بطريقه غير مفهومه
-
ارجو التكرم واكمال كود تفقيط الدرجات لأكثر من ألف درجة
ناصر سعيد replied to الحضرمي2017's topic in منتدى الاكسيل Excel
Function n2t(d As Double) As String m = Int(d / 100) h = Int(d / 10) - (m * 10) a = Int(d - (m * 100 + h * 10)) k = d - (m * 100 + h * 10 + a) n2t = num((m), 3) & IIf(m > 0 And (a > 0 Or h > 0), " و ", "") & num((a), 1) & IIf(a > 0 And h > 1, " و ", " ") & num((h), 2) n2t = Replace(n2t, "اثنتانِ عشرة", "اثنتا عشرة") n2t = Replace(n2t, "ثمانمائة", "ثمنمائة") n2t = Replace(n2t, "ثلاثمائة", "ثلثمائة") n2t = Replace(n2t, "و عشرة", "و عشر") n2t = IIf(n2t = " عشرة", "عشر", n2t) n2t = IIf(n2t = "مائتانِ ", "مائتا", n2t) n2t = "فقط " & n2t & IIf(h = 0 And a = 2, "درجتانِ", IIf((h = 1 And a = 0) Or ((h = 0 And a > 2)), " درجاتٍ", IIf(h = 0 And a = 0, " درجةٍ", " درجةً"))) & IIf(k > 0, " و نصفٌ", "") n2t = Replace(n2t, " ", " ") n2t = Replace(n2t, "إحدى درجةً", "درجةٌ") n2t = Replace(n2t, "اثنتانِ درجتانِ", "درجتانِ") End Function Function num(n As Integer, t As Integer) As String m = "مائة" h = "ونَ" Select Case n Case Is = 1 num = IIf(t = 3, m, IIf(t = 2, "عشرة", "إحدى")) Case Is = 2 num = IIf(t = 3, "مائتانِ", IIf(t = 2, "عشرونَ", "اثنتانِ")) Case Is >= 3 num = IIf(t = 3, nn(n) & m, IIf(t = 2, nn(n) & h, nn(n))) End Select End Function Function nn(n As Integer) As String Select Case n Case Is = 3 nn = "ثلاث" Case Is = 4 nn = "أربع" Case Is = 5 nn = "خمس" Case Is = 6 nn = "ست" Case Is = 7 nn = "سبع" Case Is = 8 nn = "ثمان" Case Is = 9 nn = "تسع" End Select End Function هذا هو الكود الموجود في ملف الاخ الكريم ويريد التفقيط لاكثر من 1200 درجة فياريت التكرم ومساعدته بارك الله فيكم -
شيت كنترول ابتدائي 2018 تصميم عبد الحميد شقير
ناصر سعيد replied to عبد الحميد شقير's topic in منتدى الاكسيل Excel
اخي الكريم استاذ عبد الحميد السلام عليكم ورحمة الله ان كنت شعرت بنغمه حده في حواري .. اولا انا لم اقصد ولم افكر في اي نغمه حده لكن مادمت شعرت بذلك فارجو ان تقبل اعتذاري لشخصك الكريم جزاك الله خيرا -
تقديرات الطلاب للمحترم بن عليه ... برجاء التعديل
ناصر سعيد replied to ناصر سعيد's topic in منتدى الاكسيل Excel
=INDEX({"راسب";"ضعيف";"مقبول";"جيد";"جيد جدا";"ممتاز"};MATCH(IF(ISTEXT($B2);0;$B2);{0;50;60;70;80;90};1)) =IF(IF(OR(ISTEXT($I3);ISTEXT($B3));0;$I3)/$I$2<0.3;"ضعيف";INDEX({"راسب";"ضعيف";"مقبول";"جيد";"جيد جدا";"ممتاز"};MATCH($B3;{0;50;60;70;80;90};1))) ربنا يحفظك ويصونك يارب اخي الكريم بن عليه -
بسم الله الرحمن الرحيم احبابنا في الله ادعو الله ان تكونوا بخير وبعد : هذا ملف قيم للاستاذ بن عليه جزاه الله خيرا كثيرا يارب ولكن مع تغيير في الارقام ووضع حرف الغين او الصفر في عمود الدرجه بشيت1 وكذلك في شيت5 لاتكون النتائج مضبوطه تقديرات التلاميذ للمحترم بن عليه.rar
-
شيت كنترول ابتدائي 2018 تصميم عبد الحميد شقير
ناصر سعيد replied to عبد الحميد شقير's topic in منتدى الاكسيل Excel
اخي الكريم افتح ملف اكسيل جديد لانج لايوجد به اي معلومات ماذا ترى اسفل الملف بعد فتحه ؟ سنجد اسماء الشيتات موجوده ... هذه الاسماء الخاصه بالشيتات الموجوده بالملف نسميها تابات مفردها تاب اسماء شيتات برنامجك غير موجوده اريد اظهارها ؟ كيف -
شيت كنترول ابتدائي 2018 تصميم عبد الحميد شقير
ناصر سعيد replied to عبد الحميد شقير's topic in منتدى الاكسيل Excel
نحن في الاصل معلمون نهدف الى نشر العلم وليس احتكاره .. واعتقد انك لم تر هذه المشاركه لتجيب عليها ولذلك اتعشم في الرد -
شيت كنترول ابتدائي 2018 تصميم عبد الحميد شقير
ناصر سعيد replied to عبد الحميد شقير's topic in منتدى الاكسيل Excel
مجهود تشكر عليه ربنا يبارك فيك كيف تم اخفاء التابات وعندما اردت اظهارها ووضعت علامه الصح ... لم تظهر -
لاهل الخبرة حل للمشكلة تاريخ يوم سابق
ناصر سعيد replied to محمد المصرى's topic in منتدى الاكسيل Excel
جزاك الله خيرا -
كود ترحيل بيانات بشرط .. ولا أسهل
ناصر سعيد replied to محمدي عبد السميع's topic in منتدى الاكسيل Excel
-
-
Sub Test() 'الهدف من الكود استدعاء اعمده معينه بشرط 'الشرط من صفحه اكسيل (من خارج الكود ) 'باضافه للمحترم ياسر العربي Dim arr As Variant Dim temp As Variant Dim lr As Long Dim i As Long Dim j As Long Dim Main As Worksheet Dim sh As Worksheet Dim targt Set Main = Sheets("Received shipments") Set sh = Sheets("Shipments") targt = sh.Range("C1").Value sh.Range("A5:F5000").ClearContents lr = Main.Cells(Rows.Count, 1).End(xlUp).Row arr = Main.Range("A5:F" & lr).Value ReDim temp(1 To UBound(arr, 1), 1 To UBound(arr, 2)) j = 1 For i = LBound(arr, 1) To UBound(arr, 1) If arr(i, 1) Like targt Then temp(j, 1) = arr(i, 1) temp(j, 2) = arr(i, 2) temp(j, 3) = arr(i, 4) temp(j, 4) = arr(i, 3) temp(j, 5) = arr(i, 5) temp(j, 6) = arr(i, 6) j = j + 1 End If Next i With sh .Range("A5").Resize(j - 1, UBound(temp, 2)).Value = temp .Range("A5:F" & Rows.Count).Borders.Value = 0 .Range("A5:F" & .Cells(Rows.Count, 2).End(xlUp).Row).Borders.Value = 1 End With End Sub الهدف من الكود استدعاء اعمده معينه بشرط الشرط من صفحه اكسيل (من خارج الكود ) باضافه للمحترم ياسر العربي ========= الاخ الكريم ۩◊۩ أبو حنين ۩◊۩ وجزاك الله كل خير
-
Sub GetData() Dim LastRow As Long LastRow = Sheets("Received shipments").Cells(Rows.Count, 1).End(xlUp).Row 'مسح المدى في صفحه الهدف Sheets("Shipments").Range("A5:D1000").ClearContents '======= 'صف العناوين في شيت المصدر 'حليتي عنوان العمود المطلوب فلترته ' يتم نسخهما ولصقهما في صفحه الهدف 'كتابه المدى الذي سيم اللصق فيه في صفحه الهدف Sheets("Received shipments") _ .Range("A4:D" & LastRow). _ AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Sheets("Shipments") _ .Range("D1:D2"), _ CopyToRange:=Sheets("Shipments") _ .Range("A4:D4"), Unique:=True '======= End Sub جزاكم الله خيرا
-
تم تكرار المشاركه السابقه سهوا
-
'=========================== 'هذا الكود للمحترم النابغه ياسر خليل 'الهدف من الكود هو استدعاء بشرطين من صفحه الاكسيل 'وكذلك الاستدعاء بدون شرط 'وقد تم التنويه داخل الكود عن السطر المسئول 'تم هذا الكود في 15/2/2017 '================== Sub استدعاء_بمعيارين_من_الخارج() On Error Resume Next Dim Arr As Variant Dim Temp As Variant Dim cr As Variant Dim lr As Long Dim i As Long Dim j As Long Dim c As Long Dim ws As Worksheet Dim sh As Worksheet Dim myArray, targt, targt2 Set Main = Sheets("المصدر") Set sh = Sheets("الهدف (4)") If sh.Range("C1").Value = "" Then MsgBox "المعيار الاول غير محجوز ..... برجاء تأكد من ادخال البانات وحاول مرة اخرى" Exit Sub Else If sh.Range("D1").Value = "" Then MsgBox "المعيار الثانى غير محجوز ..... برجاء تأكد من ادخال البانات وحاول مرة اخرى" Exit Sub Else targt = sh.Range("C1").Value & "*" targt2 = sh.Range("D1").Value & "*" 'targt = "ذك*" 'targt2 = "نا*" '= = = = = = = = = = = = ' شيت الهدف والمدى المطلوب مسحه sh.Range("A7:AC1000").ClearContents ' عدد الصفوف في ورقة المصدر lr = Main.Cells(Rows.Count, 1).End(xlUp).Row 'متغير اسم ورقة المصدرومدى البيانات بها Arr = Main.Range("A7:EF" & lr).Value ReDim Temp(1 To UBound(Arr, 1), 1 To UBound(Arr, 2)) 'ارقام الاعمده المطلوب نقلها cr = Array(2, 3, 7, 8, 9, 23, 28) j = 1 For i = LBound(Arr, 1) To UBound(Arr, 1) '================== 'اذا أردت ان يستدعي بيانات بدون شرط 'ماعليك الا ان تجعل السطر البرمجي الموجود 'اسفل هذا السطر لا يعمل '================== 'رقم عمود الذي سيتم البحث فيه If Arr(i, 28) Like targt & "*" _ And Arr(i, 23) Like targt2 & "*" Then '================== Temp(j, 1) = j For c = LBound(cr) To UBound(cr) Temp(j, c + 2) = Arr(i, cr(c)) Next c j = j + 1 '================== End If '================== Next i With sh 'خليه بدايه اللصق في شيت الهدف .Range("A7").Resize(j - 1, UBound(Temp, 2)).Value = Temp 'سطر لمسح التسطير .Range("A7:AJ" & Rows.Count).Borders.Value = 0 'سطر لاضافة التسطير .Range("A7:AJ" & .Cells(Rows.Count, 2).End(xlUp).Row).Borders.Value = 1 End With End If End If End Sub استدعاء_ بشرطين _من _ الخارج
-
'=========================== 'هذا الكود للمحترم النابغه ياسر خليل 'الهدف من الكود هو استدعاء بشرطين من صفحه الاكسيل 'وكذلك الاستدعاء بدون شرط 'وقد تم التنويه داخل الكود عن السطر المسئول 'تم هذا الكود في 15/2/2017 '================== Sub استدعاء_بمعيارين_من_الخارج() On Error Resume Next Dim Arr As Variant Dim Temp As Variant Dim cr As Variant Dim lr As Long Dim i As Long Dim j As Long Dim c As Long Dim ws As Worksheet Dim sh As Worksheet Dim myArray, targt, targt2 Set Main = Sheets("المصدر") Set sh = Sheets("الهدف (4)") If sh.Range("C1").Value = "" Then MsgBox "المعيار الاول غير محجوز ..... برجاء تأكد من ادخال البانات وحاول مرة اخرى" Exit Sub Else If sh.Range("D1").Value = "" Then MsgBox "المعيار الثانى غير محجوز ..... برجاء تأكد من ادخال البانات وحاول مرة اخرى" Exit Sub Else targt = sh.Range("C1").Value & "*" targt2 = sh.Range("D1").Value & "*" 'targt = "ذك*" 'targt2 = "نا*" '= = = = = = = = = = = = ' شيت الهدف والمدى المطلوب مسحه sh.Range("A7:AC1000").ClearContents ' عدد الصفوف في ورقة المصدر lr = Main.Cells(Rows.Count, 1).End(xlUp).Row 'متغير اسم ورقة المصدرومدى البيانات بها Arr = Main.Range("A7:EF" & lr).Value ReDim Temp(1 To UBound(Arr, 1), 1 To UBound(Arr, 2)) 'ارقام الاعمده المطلوب نقلها cr = Array(2, 3, 7, 8, 9, 23, 28) j = 1 For i = LBound(Arr, 1) To UBound(Arr, 1) '================== 'اذا أردت ان يستدعي بيانات بدون شرط 'ماعليك الا ان تجعل السطر البرمجي الموجود 'اسفل هذا السطر لا يعمل '================== 'رقم عمود الذي سيتم البحث فيه If Arr(i, 28) Like targt & "*" _ And Arr(i, 23) Like targt2 & "*" Then '================== Temp(j, 1) = j For c = LBound(cr) To UBound(cr) Temp(j, c + 2) = Arr(i, cr(c)) Next c j = j + 1 '================== End If '================== Next i With sh 'خليه بدايه اللصق في شيت الهدف .Range("A7").Resize(j - 1, UBound(Temp, 2)).Value = Temp 'سطر لمسح التسطير .Range("A7:AJ" & Rows.Count).Borders.Value = 0 'سطر لاضافة التسطير .Range("A7:AJ" & .Cells(Rows.Count, 2).End(xlUp).Row).Borders.Value = 1 End With End If End If End Sub استدعاء_بمعيارين_من_الخارج
-
'=========================== 'هذا الكود للمحترم النابغه ياسر خليل 'الهدف من الكود هو استدعاء بشرطين 'وكذلك الاستدعاء بدون شرط 'وقد تم التنويه داخل الكود عن السطر المسئول 'تم هذا الكود في 15/2/2017 '================== Sub استدعاء_بشرطين_من_داخل_الكود() Dim Arr As Variant Dim Temp As Variant Dim cr As Variant Dim lr As Long Dim i As Long Dim j As Long Dim c As Long Dim ws As Worksheet Dim sh As Worksheet Dim myArray, targt, targt1 targt = "ذك*" targt2 = "نا*" Set Main = Sheets("المصدر") Set sh = Sheets("الهدف (5)") '= = = = = = = = = = = = ' شيت الهدف والمدى المطلوب مسحه sh.Range("B7:AC1000").ClearContents ' عدد الصفوف في ورقة المصدر lr = Main.Cells(Rows.Count, 1).End(xlUp).Row 'متغير اسم ورقة المصدرومدى البيانات بها Arr = Main.Range("A7:EF" & lr).Value ReDim Temp(1 To UBound(Arr, 1), 1 To UBound(Arr, 2)) 'ارقام الاعمده المطلوب نقلها cr = Array(2, 3, 7, 8, 9, 11, 23, 28) j = 1 For i = LBound(Arr, 1) To UBound(Arr, 1) '================== 'اذا أردت ان يستدعي بيانات بدون شرط 'ماعليك الا ان تجعل السطر البرمجي الموجود 'اسفل هذا السطر لا يعمل '================== 'رقم عمود الذي سيتم البحث فيه If Arr(i, 28) Like targt & "*" _ And Arr(i, 23) Like targt2 & "*" Then '================== Temp(j, 1) = j For c = LBound(cr) To UBound(cr) Temp(j, c + 2) = Arr(i, cr(c)) Next c j = j + 1 '================== End If '================== Next i With sh 'خليه بدايه اللصق في شيت الهدف .Range("A7").Resize(j - 1, UBound(Temp, 2)).Value = Temp 'سطر لمسح التسطير .Range("B7:AJ" & Rows.Count).Borders.Value = 0 'سطر لاضافة التسطير .Range("B7:AJ" & .Cells(Rows.Count, 2).End(xlUp).Row).Borders.Value = 1 End With End Sub استدعاء_بشرطين_من_داخل_الكود