- Katılım
- 5 Eylül 2007
- Mesajlar
- 1,247
- Excel Vers. ve Dili
- ofis 2010
iyi akşamlar;
çeşitli işlemlerden sonra belli hale gelen çalışmada "kodlar" kısmındaki veriye göre satırların silinmesi makrosu var. 25 bin 35 bin satır arası verinin çoğunluğu siliniyor. satır sayısı fazla olduğu için işlem uzun sürüyor ve bazen makine kilitleniyor. çalışma mantığı C sütununda 101,103,121,321 varsa silinmiyor, bunun dışında olanlar varsa siliniyor.
çeşitli işlemlerden sonra belli hale gelen çalışmada "kodlar" kısmındaki veriye göre satırların silinmesi makrosu var. 25 bin 35 bin satır arası verinin çoğunluğu siliniyor. satır sayısı fazla olduğu için işlem uzun sürüyor ve bazen makine kilitleniyor. çalışma mantığı C sütununda 101,103,121,321 varsa silinmiyor, bunun dışında olanlar varsa siliniyor.
Kod:
Sub SATIR_SIL()
Application.ScreenUpdating = False: Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Set kodlar = Sheets("kodlar"): Set Data = Sheets("data")
Set WF = Application.WorksheetFunction
With kodlar.Range("C2:C" & kodlar.[A65536].End(3).Row)
.Formula = "=Left(A2,3)&""""": .Value = .Value
End With
For datasat = Data.[A65536].End(3).Row To 2 Step -1
If WF.CountIf(kodlar.Range("C2:C" & kodlar.[A65536].End(3).Row), Mid(Data.Cells(datasat, 3), 1, 3) & "") = 0 _
Or Data.Cells(datasat, 3) = Data.Cells(datasat, 7) Then _
Data.Rows(datasat).Delete Shift:=xlUp
Next
kodlar.Range("B:B").ClearContents: MsgBox "İŞLEM TAMAM...", vbInformation, "..:: ::.."
Application.ScreenUpdating = False
Application.ScreenUpdating = True: Application.Calculation = xlCalculationAutomatic
End Sub
Ekli dosyalar
Son düzenleme:
