vba da belli bir alanı seçme işlemi

Katılım
18 Ocak 2019
Mesajlar
234
Excel Vers. ve Dili
Office 2013
@Öz1.618

Daha temiz bir görüntü için makroyu aşağıdaki gibi değiştirip, Dener misiniz.
Konunuz çözülmüş oluyor mu ?

Kod:
Sub TIRE_DOLDUR()
With ActiveSheet
    sat = .Cells.Find(What:="*", After:=.[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    sut = .Cells.Find(What:="*", After:=.[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
    For Each hcr In .Range(.Cells(1, 1), .Cells(sat, sut))
        If hcr = Empty Then hcr.Value = "-"
    Next
End With
End Sub
 
Son düzenleme:

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Bende merak ettim , "activesheet" yazınca istediğiniz gibi çalışıyor mu kodlar.
 
Katılım
12 Şubat 2019
Mesajlar
115
Excel Vers. ve Dili
Vera. 10 Dil Türkçe
@Öz1.618

Daha temiz bir görüntü için makroyu aşağıdaki gibi değiştirip, Dener misiniz.
Konunuz çözüldü mü ?

Kod:
Sub TIRE_DOLDUR()
With ActiveSheet
    sat = .Cells.Find(What:="*", After:=.[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    sut = .Cells.Find(What:="*", After:=.[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
    For Each hcr In .Range(.Cells(1, 1), .Cells(sat, sut))
        If hcr = Empty Then hcr.Value = "-"
    Next
End With
End Sub
hocam çalışıyor fakat bazı hücrelere atamamış tire. çünkü trim yapmak gerekiyor. Onun haricinde problem yok. Trim yapıp sonra tire işlemi uygulamalıyız. teşekkür ederim.
 
Katılım
18 Ocak 2019
Mesajlar
234
Excel Vers. ve Dili
Office 2013
Trim den bahsettiğiniz için bazı hücrelerde sadece boşluk karakterinin olduğunu düşündüm.
Yazdığım kodda döngü içindeki If satırını aşağıdaki şekilde değiştirirseniz bu hücrelerede - yazılır.
Kod:
If Len(Replace(hcr.Value, " ", "")) = 0 Then hcr.Value = "-"
Eksik birşey kalmasın :)
 
Üst