estafurullah olur mu öyle şey sizin eklediğiniz her kodu denedim , diğer arkadasın eklediği kod üzerinden ben başka makro da yaptığım için onun üzeriden devam ettim yaptılarınız değerli işlerimlerimizi hızlandırıyor ve kolaylaştırıyorsunuz.Her ne kadar bizim kodlarla ilgilenilmese de, ben yine de kodları ekleyim.
DOSYA
Kod:Public Sub Listele() Dim col As Integer Dim arr As Variant Dim shL As Worksheet Dim i As Long Dim j As Long Dim c As Integer Dim sh As Worksheet If SayfaVar("LİSTE") = False Then Worksheets.Add Before:=Sheets(1) ActiveSheet.Name = "LİSTE" End If Set shL = Sheets("LİSTE") shL.Cells.ClearContents If Application.Caller = "Düğme 1" Then col = 8 shL.Range("A1") = "MALİYET 50 +" Else col = 9 shL.Range("A1") = "ADET 50 +" End If With shL.Range("A1") .Font.Size = 20 .Font.ColorIndex = 3 End With For Each sh In Worksheets If Not sh.Name = "LİSTE" And Not sh.Name = "ÖZET" Then i = sh.Cells(Rows.Count, "B").End(3).Row arr = sh.Range("A1:J" & i).Value j = 1 For i = 2 To UBound(arr, 1) If arr(i, col) >= 50 Then j = j + 1 For c = 1 To UBound(arr, 2) arr(j, c) = arr(i, c) Next c End If Next i i = shL.Cells(Rows.Count, "A").End(3).Row + 2 shL.Range("A" & i).Resize(j, UBound(arr, 2)) = arr End If Next sh shL.Select End Sub
Kod:Function SayfaVar(shName As String) As Boolean On Error Resume Next SayfaVar = CBool(Len(Worksheets(shName).Name) > 0) End Function