Bir kod satırının neyi anlattığı hakkında

  • Konuyu başlatan Konuyu başlatan ErolU
  • Başlangıç tarihi Başlangıç tarihi
Bu kod satırı Worksheet_Change prosedüründe kullanılıyor olmalı.

If Intersect(....) kısmı; Target (veri yazılan-HEDEF hücre adresi) ile E8:F67 alanının KİSİŞİMİ VAR MI?/KESİŞİYOR MU? diye düşünülebilir.
Satırın sonundaki Is Nothing Then Exit Sub kısmı ise, sorunun cevabı HAYIRsa işlem yapmadan kodu sonlandır anlamına geliyor.
Şayet veri yazılan hücre belirtilen hücre aralığıyla kesişiyorsa (yani belirtilen aralıkta bir hücreye veri yazılmışsa) kod bu satırı işlemsiz geçer (çünkü Is Nothing'in karşılığı FALSE olur) ve sonraki kod satırlarındaki işlemlere geçilir.

.
 
Kod Worksheet_SelectionChange koduymuş.
-- Makro kodlarındaki değişken adlarında süt gibi Türkçe karakter içeren ibarelerin kullanılmamasında yarar var.
-- sat = .... ve süt = .... satırlarını If Intersect..... satırının altına taşıyın ve Türkçe karakter olan ü harfini u olarak değiştirin.

Kod diyorki; E8:F67 alanındaki bir hücre seçili DEĞİLSE (Is Nothing) hiçbir şey YAPMA (Exit Sub),
seçiliYSE, sonraki kod adımlarına geç.

Sonraki adımlar ( E8:F67 alanındaki bir hücrenin siçilmesi hali):
-- If sat>=4 .... kısmı:
Intersect'in başlangıç satır no 8 olduğundan ve hedef sütunlar da 5 veya 6'ncı sütunlar (E-F) olduğundan
If sat >= 4...... satıyla, en sondaki End If satırının bir işlevi kalmıyor, silinebilir.
-- Seçili hücrenin satırında D hücresi (sütun no 4) DOLUYSA (If Cells(sat,4)<>"" ....Then), o satırda D sütunu hücresini seç.
-- Seçili hücrenin satırında D hücresi BOŞSA bir işlem öngörülmemiş. Çünkü Bu If...End IF arasında bir ELSE seçeneği yok.

Umarım yanlış anlamadım/açıklamadım.
Bu kodlar, istediğinizi/amacınızı karşılamıyorsa durumu açıklayın yeni kod oluşturma yoluna gidilsin derim.

.
 

Sayın Ömer BARAN,​

Ayrıntılı anlatım için içten teşekkürler.
Her şeyi çok net anlatmışsınız.
"If Intersect..... satırının altına taşıyın." bu değişimi yaptım.
Silinmesini önerdiğiniz yerleri sildim, gerekli şeyler değillermiş.
Onları silince süt = Target.Column bu satırın da işlevi kalmıyor. Onu da sildim.
Son hâliyle sorunsuz çalışıyor.
Sağ olun.
 
Geri
Üst