Soru RemoveDuplicates Sorun

Katılım
5 Kasım 2006
Mesajlar
571
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhabalar.


Range("B2:B10").RemoveDuplicates Columns:=1, Header:=xlNo bu kod ile 2.ci sütundakiler benzersiz oluyor.

Range("A2:E10").RemoveDuplicates Columns:=2, Header:=xlNo bu kod ilede 2.ci sütundakiler benzersiz oluyor fakat diğer sütunlarda etkileniyor.

Öğrenmek istediğim ikinci kod neden işe yaramıyor ve nasıl çözümü vardır.
Her sütun için alt alta kod yazmak istemediğim için sordum.
Yani mesela koddaki 2 yerine Array(2, 4) olarakta belki kullanbilirim.


Saygılar.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Merhaba.
Aşağıdaki gibi bir döngüyle işlem yapablirsiniz.
Her sütundaki veriler, kendi içerisinde ve diğer sütunları etkilemeden tekil hale getirilir.
Her sütundaki son dolu satır farklı olsa da işlem sorunsuz gerçekleşir.
Rich (BB code):
Sub BENZERSIZ()
For sut = 2 To 5    ' B sütunundan E sütununa kadar
    Range(Cells(2, sut), Cells(Cells(Rows.Count, sut).End(3).Row, sut)).RemoveDuplicates (1), xlNo
Next
End Sub
 
Katılım
5 Kasım 2006
Mesajlar
571
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Ömer hocam sağolun.
Verdiğiniz kod ile değilde sorduğum gibi cevap lazım.
Sizinki döngüdeki sütunları benzersiz yapıyor.
Tek tek if komutuda kullanmak istemiyorum.
Teşekkürler.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Verdiğim kodlarda If satırı yok.
Eğer sütun atlama olacaksa (yani aralarda işlem yapılmayacak sütun olacaksa) If ile sut değişkeni kontrol edilerek çözüm bulunabilir.
İsterseniz örnek belge üzerinden elde etmek istediğiniz sonucu örneklendirin ki deneme yapma şansı da olsun.

Range("A2:E10").RemoveDuplicates şeklinde bir'den fazla sütunu içine alan bir alan belirlediğinizde ve Columns değerini verdiğinizde,
bildiğim kadarıyla; benzersizlik için herbir satırdaki kaç sütunun birlikte değerlendirileceğini belirlemiş oluyoruz.

Ya da benim bilmediğim başka bir ayrıntı vardır.
.
 
Katılım
5 Kasım 2006
Mesajlar
571
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Sadece alttaki kod neden çalışmıyor onu öğrenmek istiyorum diyelim.
Bugün müsait bir zamanda bir gif hazırlarım.

Denemelerimde örneğin A2:E10 aralığına veriler var ve her sütun 10.cu satıra kadar dolu.
B sütununda 5 adet örneğin 10 rakamı varsa tüm sütunlar yanlış hatırlamıyorsam 6 satırlık veri kalıyor B sütununda.
Normalde örneğe göre sadece B sütunu 6.cı sütuna kadar dolu diğerleride 10.cu satıra kadar dolu olmalı.


Kod:
Range("A2:E10").RemoveDuplicates Columns:=2, Header:=xlNo
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,757
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Merhaba.
Pek kullanmadığım için önceki mesajımda sanırım tam doğruyu ifade edemedim.
Verilen Columns değeri, ilgili alandaki kaçıncı sütunda benzersizlik sağlanacağını belirliyor.
Hedef olarak belirtilen alandaki; seçilen sütunda mükerrer kaldırma sırasında, ilgili sütunda mükerrelerin bulunduğu satırlar tamamen silinmiş oluyor.
Ekteki belgede yer alan uygulama işlemi daha iyi ortaya koyacaktır.

Sonradan ilave : Ekteki belgeyi yeniledim. Yeni Belgeye, fareyle BURAYA tıklayarak da erişebilirsiniz.
 

Ekli dosyalar

Son düzenleme:
Katılım
5 Kasım 2006
Mesajlar
571
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Merhaba.
Pek kullanmadığım için önceki mesajımda sanırım tam doğruyu ifade edemedim.
Verilen Columns değeri, ilgili alandaki kaçıncı sütunda benzersizlik sağlanacağını belirliyor.
Hedef olarak belirtilen alandaki; seçilen sütunda mükerrer kaldırma sırasında, ilgili sütunda mükerrelerin bulunduğu satırlar tamamen silinmiş oluyor.
Ekteki belgede yer alan uygulama işlemi daha iyi ortaya koyacaktır.
Merhaba hocam Altın olamadığım için eki deneme imkanım yok :(
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Bir önceki cevabıma eklediğim belgeyi yeniledim ve harici erişim için bağlantı da verdim.
Sayfayı yenileyerek önceki cevabıma tekrar bakınız.
.
 
Katılım
5 Kasım 2006
Mesajlar
571
Excel Vers. ve Dili
TÜRKCE Excel 2021 32bit
Bir önceki cevabıma eklediğim belgeyi yeniledim ve harici erişim için bağlantı da verdim.
Sayfayı yenileyerek önceki cevabıma tekrar bakınız.
.
Evet denedim.
Dediğiniz gibi satırlar siliniyor.
Ya döngü yada uzun yoldan kullanmak gerek bu durumda.
 
Üst