هذه محاولة ان لم يعجبك انتظر احد الاساتدة ليجيبك
Option Explicit
Sub copy_list()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim lr, x, r
Dim rng1
Dim rng2
Application.ScreenUpdating = False
Set ws1 = Sheets("main")
Set ws2 = Sheets("list")
With ws2
.Range("b6:c10000").ClearContents
Set rng1 = .Range("g5")
Set rng2 = .Range("i5")
If rng1 = "" Or rng2 = "" Then Exit Sub
r = 6
lr = ws1.Cells(Rows.Count, "c").End(xlUp).Row
For x = 3 To lr
Select Case ws1.Cells(x, "c").Value2: Case rng1 To rng2
.Range("b" & r).Resize(1, 2).Value = ws1.Cells(x, "c").Resize(1, 2).Value
r = r + 1
End Select
Next x
End With
Application.ScreenUpdating = True
End Sub
aaaa.xlsm