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

الردود الموصى بها

قام بنشر

عمل ممتاز وجهد تشكرعلية اخي حسين لكن ياحبذا لو يتم تنفيذ الطريقة بواسطة دالة وليس بالكود لكي استطيع تكييفها على الملف الخاص بي بصورة اسهل واسرع حفظك الله ورعاك

  • أفضل إجابة
قام بنشر

لا أعرف سبب التركيز على الحلقات التكرارية في أكثر الاكواد
في حين يمكن عمل ذلك بواسطة فلتر بسيط

Option Explicit

Sub test_salim()

Dim ws As Worksheet
Dim ws2 As Worksheet
Set ws = Sheets("البيانات")
Set ws2 = Sheets("التقرير")
 If ActiveSheet.Name <> ws2.Name Then ws2.Select
ws.AutoFilterMode = 0
ws2.Range("A10").CurrentRegion.Clear
ws.Range("A9").CurrentRegion.AutoFilter 1, ws2.[c2]
ws.Range("A10").SpecialCells(12).Copy
ws2.Range("A10").PasteSpecial (8)
ws2.Range("A10").PasteSpecial (11)
Application.CutCopyMode = 0
ws.AutoFilterMode = 0
End Sub

 

  • Like 2
  • Haha 1
قام بنشر

جرب هذه المحاولة  بمجرد  الكتابة  في  الخلية  c2  سيتم جلب البيانات

غير اسماء الشيتات اجعل  ورقة  البيانات"data"  وورقة التقرير report  وضع  الكود في ورقة التقرير

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("c2")) Is Nothing Then
Sheets("data").Cells.AutoFilter Field:=1, Criteria1:=Target.Value
Sheets("data").AutoFilter.Range.Columns("A:q").Offset(1).Copy Sheets("report").Range("A10")
End If
Sheets("data").AutoFilterMode = False
End Sub

 

  • Like 4
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information