اخواني اعضاء المنتدي الكرام بعد سلام الله عليكم ورحمة الله وبركاته
عايز اعرف ايه الخطأ اللي في الكود ده في الجزئية دي بالتحديد ( sh.Range("C10:L1000").ClearContents )
كلما انفذ الكود عندي يمسح حتي اللي بعد L1000 يعني يمسح M و N و O.....
وشكرا لكم جميعا
Sub استدعاء_كنترول4_الي_ملف_نصف_العام_صف_رابع()
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("كنترول4")
Set sh = Sheets("ملف وتحريري نصف العام صف رابع")
targt = sh.Range("M5").Value & "*"
targt2 = sh.Range("M6").Value & "*"
'targt = "ذك*"
'targt2 = "نا*"
'= = = = = = = = = = = =
' شيت الهدف والمدى المطلوب مسحه
sh.Range("C10:L1000").ClearContents
' عدد الصفوف في ورقة المصدر
lr = Main.Cells(Rows.Count, 4).End(xlUp).Row
'متغير اسم ورقة المصدرومدى البيانات بها
arr = Main.Range("A10:R" & lr).Value
ReDim temp(1 To UBound(arr, 1), 1 To UBound(arr, 2))
'ارقام الاعمده المطلوب نقلها
cr = Array(2, 4, 5, 7, 9, 10, 11, 12, 15)
j = 1
For i = LBound(arr, 1) To UBound(arr, 1)
'==================
'اذا أردت ان يستدعي بيانات بدون شرط
'ماعليك الا ان تجعل السطر البرمجي الموجود
'اسفل هذا السطر لا يعمل
'==================
'رقم عمود الذي سيتم البحث فيه
'If arr(i, 😎 Like targt & "*" _
And arr(i, 89) 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
'==================
'==================
Next i
With sh
'خليه بدايه اللصق في شيت الهدف
.Range("C10").Resize(j - 1, UBound(temp, 2)).Value = temp
End With
End Sub