H

Çözüldü Son sütuna dökme kodlarında eklemeler

  • Konuyu başlatan Konuyu başlatan hakki83
  • Başlangıç tarihi Başlangıç tarihi

hakki83

Site Üyesi
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Değerli hocalarım selamlar.

Örnek dosyada değerli Ömer Baran hocamın kodları vardır.

Şöyle bir ekleme rica edeceğim:

Düğmeye basınca, kodlar, son sütunu otomatik buluyor; ve sonuçları bu sütuna döküyor. Dökerken de "SONUÇLAR" şeklinde bir başlık ilave ediyor.

Tabloda bir veya birden fazla işaretlenmiş hücreler var ise, "BİR KISMI DOLU"
Tabloda hiç işaretlenmiş hücre yok ise, "TAMAMEN BOŞ" olarak işaretliyor.
Dosya bu şekilde çalışıyor.

Olmasını istediğim ekleme şudur: Eğer bir satır tamamen işaretli ise, yani dolu ise, o zaman o satırın karşılığında "BİR KISMI DOLU" değil de; "TAMAMEN DOLU" olarak yazsın.
(Örneğin 3. satırda göründüğü gibi tüm hücreler işaretlenmiş)

Daha sonra bir-iki ekleme daha rica edeceğim. Karışıklık olmasın diye daha sonra isteyeceğim.

Saygılar
 

Ekli dosyalar

Önceki kodu düzenlemedim. Önceki kodu aşağıdaki kod ile değiştirip deneyin.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(15 satır)
Değerli Okutkan hocam önce emeğinize sağlık. Teşekkür ederim.

Sizin yeniden oluşturduğunuz kodlara göre, eğer bu kodlar üzerinden devam edeceksek; öncelikle yukarıdaki Ömer Baran hocamın kodlarında zaten halihazırda var olan bazı özellikleri eklemek, ve düzeltmeleri yapmak gerekiyor. İlk önce bunlardan sırayla bahsedeyim.

- İşaretlemelerin yapıldığı sütun sayısı sabit değil. Değişken. Dolayısı ile dökülecek sonuçların, son sütunu otomatik olarak bulup dökülmesi gerekiyor.

- Son sütuna dökülen sonuçların en üst hücresine, otomatik olarak SONUÇLAR başlığının gelmesi gerekiyor.

- Gerektiği halde dosyalarda kullandığım, (örnek dosyada pasif olarak görünen ve özellikle örnek dosyama eklemeyi ihmal etmediğim), sıralamayı yapan kod satırının olması gerekiyor.

Ve bu kod satırında, tıpkı Ömer Baran hocamın kodlarında olduğu gibi, (ihtiyaca göre) ilk sütuna ve son sütuna göre sıralama özelliğinin olması,
Ve yine ihtiyaca göre, artan veya azalan sıralama yapan komutların, olması gerekiyor.

Zira bu özellikler bahsettiğim gibi örnek dosyada vardı.

Bu özellikleri de ekleyebilirsek, ilk mesajımın en altında belirttiğim diğer ihtiyaçlarımı, dile getireceğim.

Teşekkürler.
 
Merhaba @hakki83 .

Belgedeki kodda yer alan For ...... Next satırları arasını şöyle değiştirin.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(9 satır)
Değerli Ömer Baran hocam merhaba, esenlikler dilerim.

İlk isteğim sayenizde olmuştur.
Şimdi hemen diğer isteğime geçeyim.

Vermiş olduğunuz satırları dosyaya ekledim, ve örnek dosya 2 olarak tekrar yükledim.

Fakat şöyle bir şey yaptım. J ve K sütunlarının içini sildim. Yani son dolu sütunun yeri değişti. Düğmeye basınca (son boş sütun şimdi J sütunu olduğuna göre) , L’deki eski verilerin silinip, J’ye tekrar dökülmesi gerekiyordu. (Çünkü son dolu sütunun yeri değişti)
(Son dolu sütun F de olabilir, M de olabilir, Z de olabilir)
Ama olmadı.

İşte şu an tam olarak örnek dosya 2’deki göründüğü haliyle olan sorunu çözecek düzeltmeleri rica ederim.


Teşekkürler.
 

Ekli dosyalar

Set s = ...... satırının hemen altına şu satırları ekleyin.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(3 satır)
Ömer Hocam çok güzel oldu. Fikrinize sağlık.

Şimdi (hani en altta pasif sıralama satırı vardı ya) işte o satırı aktif hale getirdim. Denemek için çalıştırdım. Hata verdi. Buradaki düzeltmeyi yapabilir miyiz lütfen.
 

Ekli dosyalar

s.Range(s.Cells(2, 1), s.Cells(XDA, XDu)).Sort s.Cells(1, "A"), 1
veya
s.Range(s.Cells(2, 1), s.Cells(XDA, XDu)).Sort s.Cells(1, XDu), 1
Ömer hocam son satırdaki hata; çift tırnak kullanım hatasından dolayıymış. Bakınca farkettim.
Çok teşekkr ederim.
Konu çözülmüştür. Başka kafama takılan bir şey olursa daha sonra arz edeceğim.
Saygılar.
 
Ömer hocam merhaba.

Kodlarımızla ilgili hiç sorun yok. Fakat orjinal dosyamda kullandığım bir kod grubunu ekleyip çalıştırınca çakıştığını, sonuçların hepsinin (kod gereği) EVET kelimesi olarak çıktığını ve hatta neredeyse dosyanın kilitlendiğini gördüm.

Bu durum çözülebilir mi?
Kodlara; "SONUÇLAR adındaki başlığı olan sütunu es geç, dikkate alma" gibi bir satır, veya başka farklı bir çözüm uygulanabilir mi?
 

Ekli dosyalar

Set s = ...... satırının hemen altına şu satırları ekleyin.

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

Ömer hocam merhaba. Esenlikler dilerim.

Bu kodda küçük bir düzeltme yapabilir miyiz?

Örnek dosyada J sütunun başlığı (J1) boş. Kodları çalıştırdığımızda sadece J sütunu silinmesi gerekirken, J, K, L sütunları üçü birden siliniyor, ve akabinde sonuçlar dökülüyor son sütuna.

Sadece boş olan başlık hücre veya hücrelerinin; sütun veya sütunlarının silineceği şekilde değiştirebilir miyiz?



(Bir örnek daha vermem gerekirse;
J1 ve B1 hücreleri boş ise, sadece bu iki sütunun silinmesi gerekir)

Teşekkürler.
 

Ekli dosyalar

Üst