• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

boş hücrelere otomatik değer atama

  • Konbuyu başlatan Konbuyu başlatan incsoft
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Ağustos 2009
Mesajlar
752
Excel Vers. ve Dili
Office Ev ve İş 2021 - Türkçe
Arkadaşlar örneğin E ve F sütünlarında 5000.satıra kadar otomatik olarak "0" değerini yazdırmak için buttonuma ne gibi bir kod yazmam gerekmektedir?
 
Kod:
Sub askm()
Application.ScreenUpdating = False
For i = 1 To 5000
    Cells(i, 5) = 0
    Cells(i, 6) = 0
Next i
Application.ScreenUpdating = True
End Sub
 
Alternatif
Kod:
Sub askm()
Application.ScreenUpdating = False
Dim k As Range
For Each k In Range("E1:F5000")
    k = 0
Next
Application.ScreenUpdating = True
End Sub
 
Hocam bütün hücrelere 0 atadı. Ben sadece boş olan hücrelere yazdırtmak istemiştim.

Teşekkürler.
 
Merhaba,
Size Sayın askm tarafından önerilen kodu aşağıdaki şekilde kullanabilirsiniz:
Kod:
Sub askm()
Application.ScreenUpdating = False
Dim k As Range
For Each k In Range("E1:F5000")
    [COLOR="Red"][B]If k.Value = "" Then[/B][/COLOR]
        k.Value = 0
    [COLOR="red"][B]End If[/B][/COLOR]
Next
Application.ScreenUpdating = True
End Sub
 
Merhaba,
Size Sayın askm tarafından önerilen kodu aşağıdaki şekilde kullanabilirsiniz:
Kod:
Sub askm()
Application.ScreenUpdating = False
Dim k As Range
For Each k In Range("E1:F5000")
    [COLOR="Red"][B]If k.Value = "" Then[/B][/COLOR]
        k.Value = 0
    [COLOR="red"][B]End If[/B][/COLOR]
Next
Application.ScreenUpdating = True
End Sub

Güzel hocam ancak çok aşırı yavaş çalışıyor nedense
 
E1:F5000 aralığını seçin (sol üstteki adres çubuğuna E1:F5000 yazıp Enter yaparak hızlıca seçebilirsiniz)

F5 tuşuna basın

Özel düğmesine basın

Boşlukları işaretleyin

0 yazın

CTRL +ENTER yapın
 
incsoft' Alıntı:
Güzel hocam ancak çok aşırı yavaş çalışıyor nedense

Aşağıdaki kodları deneyin.
Kod:
Sub bos_hucrelere_sifir_ata()
Dim sh As Worksheet, hcr As Range, ss As Long
Set sh = Sayfa1
ss = sh.Range("E:F").Find("*", , , , xlByRows, xlPrevious).Row
Set hcr = sh.Range("E2:F" & ss)
hcr.SpecialCells(xlCellTypeBlanks).Select
Selection.Value = 0
sh.Range("E1").Select
MsgBox "İşlem tamamlandı..", vbInformation, "antonio"
End Sub
 
Geri
Üst