- Katılım
- 30 Mart 2010
- Mesajlar
- 30
- Excel Vers. ve Dili
- Excel 2003
Sub aaa()
Dim satır As Long
satır = Range("A10:A" & Rows.Count).Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'MsgBox satır
i = 1500
Do While i >= satır + 1
Rows(i - 1).Select
Selection.Delete Shift:=xlToLeft
i = i - 1
Loop
End Sub
Dim satır As Long
satır = Range("A10:A" & Rows.Count).Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'MsgBox satır
i = 1500
Do While i >= satır + 1
Rows(i - 1).Select
Selection.Delete Shift:=xlToLeft
i = i - 1
Loop
End Sub
Merhabalar;
Yukarıdaki kodda A sütunundaki en son veri olan hücreden sonra 1500. satıra kadar olan boş satırları sildirebiliyorum. Fakat bu işlemi satır satır yaptığından çok uzun sürüyor.
İstiyorum ki A sütunundaki en son veriyi bulsun. Bir sonraki boş satıra geçsin ve 1500. satıra kadar olan bütün boş satırları aynı anda seçsin ve silme işlemini tek seferde hızlıca yapsın.
Aynı işlemi şu kodla da yapıyorum ama bu da benzer. satır satır yapıyor.
sub bossatır ()
Dim k, say As Long
say = Range("B10:B" & Rows.Count).Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
k = 1500
Do While k >= say
If Cells(k, 1).Value = "" Then
Cells(k, 1).Select
Selection.EntireRow.Select
Selection.Delete Shift:=xlToLeft
End If
end sub
Makro kaydı ile yapmaya çalıştım.Fakat A sütunundaki en son dolu hücre farklı çalışmalarda değişeceğinden çözüm olmadı.
Sub ccc()
'
'
'
Range("A10").Select
Selection.End(xlDown).Select
Rows("686:1500").Select
End Sub
