Makro kullanarak karakterden öncesini silmek

0
28

Excelde uzun listeler içerisinde belirlenen karakterden öncesini silmek için makro kullanabilirsiniz. Bazen bu şekilde bir işlem çok işimize yarayabilir.

Örneğin A sütununda bulunan veriler içerisinde virgülden “,” önceki veriyi silmek istersek alttaki gibi bir makro kullanabiliriz.

Sub Sil()
Set s = ActiveSheet
For i = 1 To 1000
Bak = s.Cells(i, 1)
For j = 1 To Len(s.Cells(i, 1))
If Mid(s.Cells(i, 1), j, 1) = "," Then
Bak = Right(s.Cells(i, 1), Len(s.Cells(i, 1)) - j)
End If
Next
s.Cells(i, 1) = Bak
Next
End Sub

Yukarıdaki makro kodunda “s.Cells(i, 1) = Bak” satırını alttaki şekilde değiştirirsek A sütunundaki verileri bozmadan B sütununa istediğimiz şekilde sonuçları yazdırabiliriz.
s.Cells(i, 2) = Bak
Aynı şekilde B sütununa değil de istediğimiz sütuna rakamı değiştirerek yazdırılmasını sağlayabiliyoruz. İstediğiniz karakteri makro içinden değiştirebilirsiniz.

Alttaki şekilde kullanabileceğiniz makro ise istediğiniz karakterden sonrasını tüm çalışma kitabını kontrol ederek siler. Dikkatli kullanmalısınız.

Sub Sagdan()
Cells.Replace What:=",*", Replacement:=" "
End Sub

Araştırılanlar: excelde belli bir karakterden öncesini silme, excelde belli bir yerden gerisini silmek

CEVAP VER

Lütfen yorum girin!
Lütfen adınızı girin