"DELETE" ve "BACKSPACE" tuşlarının oluşturduğu Problem !

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Kısa Açıklama

"DELETE" ve "BACKSPACE" tuşlarının oluşturduğu Problem ! isimli başlıkta, ilgili işlemlere dair detaylar yer almaktadır.
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba,

Kullanılmakta olan bir "Analiz" adlı Çalışma Kitabının "Sayfa1" 'i Veri Tabanını oluşturmakta, diğer sayfalar ise içeriğindeki Fonksiyonlar yardımıyla ve Sayfa1' deki verileri kullanarak Matematiksel sonuçlar oluşturmakta ve Analiz yapmaktadır.

Veri Tabanı olarak kullanılan "Sayfa1", "A1:Z1000" aralığından oluşmaktadır.

Kullanıcıların gönderdiği veriler, gönderdikleri Excel Sayfalarından Kopyalanarak, söz konusu "Analiz" adlı Çalışma Kitabının "Sayfa1" ine Yapıştırılarak, gerekli çalışma yürütülmektedir.

Sorun olan şudur;

Kullanıcılar, Veri Tabanı bilgisi oluşturacak sayfalarını hazırlarken, hücrelerdeki eski verilerini "DELETE" tuşu kullanarak silmek yerine, "BACKSPACE" tuşu ile sözde silme yöntemini kullandıklarında, hücre içi boşalmış (silinmiş) gibi gözükse de veri tortusu bıraktığından, Analiz yapacak olan Çalışma Kitabının, ilgili Fonksiyonları hatalı sonuç üretmekte yada sonuç üretememektedir.

İstediğim Makro ise şudur;

Gelen Veri Tabanı bilgisini içeren sayfa içeriği hazırlanırken, "Backspace" tuşu ile silme işlemine maruz kalmışsa, Kopyala-Yapıştır sonrası Analiz Çalışma Kitabının, Sayfa1'ini temizlemek için,

"A1:Z1000" aralığındaki, içi boş gözüken hücreleri tek komutla "Delete" edebilen MAKRO'ya ihtiyacım bulunmaktadır.

Umarım, izah edebilmişimdir, zira bu anlatımı örnekleyebilecek bir çalışma hazırlamam mümkün değildir.

Değerli yardımlarınızı beklemekteyim. Saygılarımla.
 
Merhabalar Sn. ERMAN SAYINALP

Çalışma dosyasının yedeğini alıp, Sayfa1 'in kod bölümüne aşağıdaki kodları ekleyip çalıştırınız.

Örnek resimde olduğu gibi, A1:A10 arasında seçili olan hücreler boş olarak görünmektedir.
Ancak, seçim sonucunda Excel, 8 hücreyi dolu olarak sayıyor.
Aşağıdaki kod, bu hücrelerin içeriğini temizler ve sonucu 0 olarak gösterir.
1586415652534.webp

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(11 satır)
 
Moderatörün son düzenlenenleri:
Merhabalar Sn. ERMAN SAYINALP

Çalışma dosyasının yedeğini alıp, Sayfa1 'in kod bölümüne aşağıdaki kodları ekleyip çalıştırınız.

Örnek resimde olduğu gibi, A1:A10 arasında seçili olan hücreler boş olarak görünmektedir.
Ancak, seçim sonucunda Excel, 8 hücreyi dolu olarak sayıyor.
Aşağıdaki kod, bu hücrelerin içeriğini temizler ve sonucu 0 olarak gösterir.
1586415652534.webp
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(11 satır)


Merhaba Sn. Ahmet Rasim,

Yazdığınız kodlama maalesef olmadı, hatta, dosyanın ve bilgisayarın çalışmasına da engel oldu, Sanırım birşeyleri sürekli döngüler hale getirdi. Şimdi ekte bir örnek dosya gönderiyorum. Sanırım anlatmak istediğimi daha iyi ortaya koyacaktır. Belki de üzerinde test yapabilme imkanı bulabileceksiniz.
Bu yüzden verdiğim zahmet için şimdiden teşekkür ediyorum.
 
Ekli dosyalar
Moderatörün son düzenlenenleri:
Merhabalar Sn. ERMAN SAYINALP;

Paylaşmış olduğum kodu, örnek dosyanızda da denedim ve çalışıyor.

Kod sonucu formüller
1586462351856.webp

Not: BAĞ_DEĞ_DOLU_SAY formülüne eklemiş olduğunuz bu koşula "<>" gerek yok.

Boş hücreleri saymak için örnek olarak;
=BOŞLUKSAY(G1:G237) ya da =EĞERSAY(G1:G237;"") formüllerini kullanabilirsiniz.

Eğer varsa, kullandığınız kodlar ile birlikte; Paylaşmış olduğum kodun, çalışma dosyanıza uygulanmış halini paylaşmanız mümkün mü?
Dosya içerisinde gerçek bilgiler olmadan.
 
Moderatörün son düzenlenenleri:
Merhabalar Sn. ERMAN SAYINALP;

Paylaşmış olduğum kodu, örnek dosyanızda da denedim ve çalışıyor.

Kod sonucu formüller
1586462351856.webp
Not: BAĞ_DEĞ_DOLU_SAY formülüne eklemiş olduğunuz bu koşula "<>" gerek yok.

Boş hücreleri saymak için örnek olarak;
=BOŞLUKSAY(G1:G237) ya da =EĞERSAY(G1:G237;"") formüllerini kullanabilirsiniz.

Eğer varsa, kullandığınız kodlar ile birlikte; Paylaşmış olduğum kodun, çalışma dosyanıza uygulanmış halini paylaşmanız mümkün mü?
Dosya içerisinde gerçek bilgiler olmadan.

Tekrar merhaba,

Ben de denediğimde, Örnek üzerinde çalıştığını gördüm, ancak tepkime süresi bu dar aralıkta dahi epey uzun, zira gerçek dosyamda taranacak ve düzeltilecek hücre sayısı yaklaşık 110.000 adet. Dolayısıyle tepkime süresi durmak bilmiyor. (Önceki denememde yaklaşık 1 saat bekledim daha devam ediyordu.)

Diğer taraftan, gerçek dosyayı affınıza sığınarak paylaşamıyorum, çünkü çok kompleks bir program, Şirket Gayrı-Resmi Muhasebesini ve analizini yapmakta kullanıyorum, yaklaşık 100 sayfadan oluşan, birbirleriyle direkt yada dolaylı bağlantılı olup matematiksel sonuçlar çıkaran bir çalışma, ayrıca onunda bir miktar çalışma prensibini izah etmem gerekir ki, bu hiç olası değil.

Ancak, söz konusu ihtiyacıma çözüm aradığım sayfa özelliği şöyle;

Sayfa, C1 den M9999 a kadar aralıkta, C1 den M12 ye kadar olan aralık KİLİTLİ, C13 ten M9999 a kadar olan aralık KİLİTSİZ ve tüm sayfa Parolalı SAYFA KORUMALI yapıda.

Tepkime süresi çok kısa bir KODLAMA yazılabilir mi bilemiyorum. Görüşmek dileğimle.
 
Moderatörün son düzenlenenleri:
Merhabalar;
3 Numaralı mesajda paylaşmış olduğunuz dosyadaki değerleri, A1:Z1000 aralığında çoğalttım.

Kodu aşağıdaki şekilde değiştirip dener misiniz?
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(10 satır)
Bu kodun çalışma süresi
1586470100919.webp


İlk paylaştığım kodun çalışma süresi
1586470139816.webp
 
Moderatörün son düzenlenenleri:
Merhabalar;
3 Numaralı mesajda paylaşmış olduğunuz dosyadaki değerleri, A1:Z1000 aralığında çoğalttım.

Kodu aşağıdaki şekilde değiştirip dener misiniz?
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(10 satır)
Bu kodun çalışma süresi
1586470100919.webp

İlk paylaştığım kodun çalışma süresi
1586470139816.webp


Görüntüdeki HATA mesajını alıyorum !

1586471534147.webp
 
Moderatörün son düzenlenenleri:
Merhabalar Sayın @ERMAN SAYINALP .

Sayın @AhmetRasim şu an çevrimiçi değil, kendisinin müsadesiyle alternatif cevap vereyim dedim.

Kodda yeşil renklendirdiğim kısımlar AÇIKLAMAlardır ve kodun çalışmasına engel olmaz, isterseniz silebilirsiniz.
Kodda belirtilen alanda, formül olmadığı varsayılmıştır.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(18 satır)

.
 
Merhabalar Sayın @ERMAN SAYINALP .

Sayın @AhmetRasim şu an çevrimiçi değil, kendisinin müsadesiyle alternatif cevap vereyim dedim.

Kodda yeşil renklendirdiğim kısımlar AÇIKLAMAlardır ve kodun çalışmasına engel olmaz, isterseniz silebilirsiniz.
Kodda belirtilen alanda, formül olmadığı varsayılmıştır.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(18 satır)

.


Ömer bey,

Her zaman ki gibi, son anda imdadıma yetişiyorsunuz. Çok teşekkür ederim. Kod mükemmel çalışıyor, dolayısıyle işlem "çözüldü" diyebiliriz.
Selamlar
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Geri
Üst