Eski bir web tarayıcısı kullanıyorsunuz. Bu veya diğer siteleri görüntülemekte sorunlar yaşayabilirsiniz..
Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
VBA INTERSECT Satırının Çalışma Mantığını Açıklama
- Konuyu başlatan ErolU
- 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.
.
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.
.
-- 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.
Benzer konular Benzer kaynaklar Benzer dosyalar
-
-
Tarih Bazlı Raporlamada Açıklama Temizleme
- YasarPiskin
- Makro Soruları
- Yanıt: 2
-
Farklı Çalışma Kitaplarından Bilgi Alma
- teyadih
- Makro Soruları
- Yanıt: 15
-
Diğer Çalışma Kitabından Veri Çekme
- YasarPiskin
- Makro Soruları
- Yanıt: 2
-
VBA Penceresindeki Sayfaları Sıralama
- YasarPiskin
- Makro Soruları
- Yanıt: 3
-
Çalışma Sayfasını Farklı Klasöre Aktarma
- yukselendincer
- Makro Soruları
- Yanıt: 4
-
-
-
Açıklama İçeren Tüm Hücreleri Vurgulama
- ExcelDepo
- Hazır Makrolar
- İndirme: 0
-
Çalışma Kitabındaki Tüm Çalışma Sayfalarını Koruma
- ExcelDepo
- Hazır Makrolar
- İndirme: 0
-
Çalışma Sayfasını Kaydetme
- ExcelDepo
- Hazır Makrolar
- İndirme: 0
-
Çalışma Sayfalarını Kopyalama
- ExcelDepo
- Hazır Makrolar
- İndirme: 0
-
Çalışma Kitabının Yedeğini Oluşturma
- ExcelDepo
- Hazır Makrolar
- İndirme: 0
-
-
-
Aktif Hücreye Açıklama Ekleme
- ExcelDepo
- Excel Şablonları
- İndirme: 0
-
Çalışma Saati Hesaplama
- ExcelDepo
- Excel Şablonları
- İndirme: 92
-
Kısa Çalışma Ödeneği
- ExcelDepo
- Excel Şablonları
- İndirme: 402
-
Kısa Çalışma Ödeneği Hesaplama
- gorkemguvez
- Excel Şablonları
- İndirme: 526
-
Çalışma Kitabı ve Sayfa İşlemleri İçin Makro Örnekleri
- ExcelDepo
- Excel Şablonları
- İndirme: 169
-