- Katılım
- 15 Mart 2005
- Mesajlar
- 42,601
- Excel Vers. ve Dili
- Microsoft 365 Tr-En 64 Bit
#18 nolu mesajımı revize ettim. Tekrar deneyiniz.
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim S1 As Worksheet, S2 As Worksheet, Son As Long
Set S1 = Sheets("Urunler")
Set S2 = Sheets("StokGirisleri")
Application.ScreenUpdating = False
S1.Range("C2:C" & S1.Rows.Count).ClearContents
Son = S2.Cells(S2.Rows.Count, 4).End(3).Row
If Son > 1 Then
S2.Range("D2:D" & Son).Copy S1.Range("C2")
S1.Range("C2:C" & S1.Cells(S1.Rows.Count, 3).End(3).Row).RemoveDuplicates Columns:=3, Header:=xlNo
End If
Application.ScreenUpdating = True
Set S1 = Nothing
Set S2 = Nothing
End Sub
Ömer Bey Benzersizleri süzmek için kod ararken yukarıdaki sizin çalışmanızı buldum. Çalışmama uyguladım çalıştı ama ben A sütununun tamamını değil de A6 dan başlayarak süzmesini istedim ama farklı denemelerim (A6:6) hep hata verdi.Merhaba,
Sayfa2 nin kod bölümüne kopyalayınız.
Kod:Private Sub Worksheet_Activate() Dim S1 As Worksheet, d As Object, i As Long, deg Set S1 = Sheets("Sayfa1") Set d = CreateObject("Scripting.Dictionary") Application.ScreenUpdating = False For i = 2 To S1.Cells(Rows.Count, "A").End(xlUp).Row deg = S1.Cells(i, "A") If deg <> "" Then If Not d.exists(deg) Then d.Add deg, Nothing End If End If Next i Range("H2:H" & Rows.Count).ClearContents Range("H2").Resize(d.Count) = Application.Transpose(d.Keys) End Sub
For i = 2 To S1.Cells(Rows.Count, "A").End(xlUp).Row
deg = S1.Cells(i, "A")
Korhan Bey ilginize teşekkür ederim.Döngünün başlangıcını değiştirip deneyiniz.
For i = 2
Çok özür dilerim. Anlayamadım. Bir yeri mi atladım...Bazen kendimi sorguluyorum.. Biz neyi yanlış yapıyoruz diye..
Korhan Bey Tekrar özür dilerim.Döngünün başlangıcını değiştirip deneyin ifadesini kullanmıştım. Ayrıca 2 değerini kalın fontlu yapmıştım. Sanıyorum gözünüzden kaçtı.
Çok Teşekkür ederim. Sizi meşgul ettim. kusura bakmayın.Döngüyü 6. satırdan başlatmak istiyorsanız 2 değeri yerine 6 yazmalısınız.