Boş Değilse ve Sıfıra Eşit Değilse Sıfır Yaz - Microsoft Excel


Seçili alanda For Each ile kontrol yapılıyor. Eğer kontrol edilecek hücrenin değeri sıfır değilse mevcut değeri siler ve yerine sıfır yazar.

Kod


Option Explicit

Sub SifirdanFarkliDegerleriSifirYap()
Dim rng As Range

For Each rng In ActiveSheet.UsedRange
    If rng.Value <> 0 Then
        rng.Value = 0
    End If
Next
End Sub

Kod (Açıklamalı)


Option Explicit

Sub SifirdanFarkliDegerleriSifirYap()

  '--------------------------------------------------
  'For Each döngüsü için değişken tanımladık.
  'Tek tek kontrol edilecek yapıları Range
  'olarak düşündüğümüzden ve döngüyü de bu
  'şekilde kuracağımızdan dolayı bu tipi
  'Range oldu.
  '--------------------------------------------------
  Dim rng As Range
  
  '--------------------------------------------------
  'Aktif sayfada kullanılan alanda For Each
  'çalıştır. Her alan için kontrol yap.
  '--------------------------------------------------
  For Each rng In ActiveSheet.UsedRange
        
    '--------------------------------------------------
    'Eğer ilgili alanda değer
    '0 değilse çalışsın.
    '--------------------------------------------------
    If rng.Value <> 0 Then
    
      '--------------------------------------------------
      'Eğer şart sağlanıyorsa ilgili alana 0 yazdır.
      '--------------------------------------------------
      rng.Value = 0
    End If
  Next
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba