tahsinanarat
Altın Üye
- Katılım
- 14 Mart 2005
- Mesajlar
- 2,181
- Excel Vers. ve Dili
- Ofis 2019 Türkçe
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
[B]Sub AYNILARI_SIL()[/B]
Application.ScreenUpdating = False
For sut = 4 To 5
Columns(sut).TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, Other:=True, OtherChar:=","
For sat = 2 To Cells(Rows.Count, 1).End(xlUp).Row
sonsut = Cells(sat, Columns.Count).End(xlToLeft).Column
If sonsut > 6 Then
For sutt = 6 To sonsut
Cells(sat, sutt) = Trim(Cells(sat, sutt))
Next
For suttt = sonsut To 7 Step -1
If WorksheetFunction.CountIf(Range(Cells(sat, 6), Cells(sat, suttt - 1)), _
Cells(sat, suttt)) > 0 Then
Cells(sat, suttt).Delete Shift:=xlToLeft
sutt = sutt - 1: sonsut = sonsut - 1
End If
Next
metin = Cells(sat, 6)
If sonsut > 6 Then
For sutttt = 7 To sonsut
metin = metin & " , " & Cells(sat, sutttt)
Next
End If
Cells(sat, 6) = metin
End If
Next
Range("F2:F" & Cells(Rows.Count, 1).End(xlUp).Row).Copy Cells(2, sut)
Columns("F:IV").Delete Shift:=xlToLeft
Next
Range("D2:E" & Cells(Rows.Count, 1).End(xlUp).Row).NumberFormat = "@"
Columns("A:E").AutoFit
Application.ScreenUpdating = True
MsgBox "İşlem tamamlandı.", vbInformation, "..::.. Ömer BARAN ..::.."
[B]End Sub[/B]
Teşekkürler.Sn. Ömer Baran hocam, çok mükemmel olmuş ellerinize sağlık. Çok Teşekkür ederim.
[B]Sub AYNILARI_SIL()[/B]
Application.ScreenUpdating = False
Columns("D:E").Replace What:=" , ", Replacement:="|", LookAt:=xlPart
For sut = 4 To 5
Columns(sut).TextToColumns [F1], Destination:=Range("F1"), DataType:=xlDelimited, Other:=True, OtherChar:="|"
For sat = 2 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(sat, Columns.Count).End(xlToLeft).Column > 6 Then
metin = Cells(sat, 6)
For suttt = 7 To Cells(sat, Columns.Count).End(xlToLeft).Column
If Len(Replace(metin, Cells(sat, suttt), "")) = Len(metin) Then _
metin = metin & " , " & Cells(sat, suttt)
Next
Cells(sat, 6) = metin
End If
Next
Range("F2:F" & Cells(Rows.Count, 1).End(xlUp).Row).Copy Cells(2, sut)
Columns("F:IV").Delete Shift:=xlToLeft
Next
Range("D2:E" & Cells(Rows.Count, 1).End(xlUp).Row).NumberFormat = "@"
Columns("A:E").AutoFit
Application.ScreenUpdating = True
MsgBox "İşlem tamamlandı.", vbInformation, "..::.. Ömer BARAN ..::.."
[B]End Sub[/B]
Sub tek_birak()
Application.ScreenUpdating = False
sonsatir = Cells(Rows.Count, "A").End(3).Row
For i = 2 To sonsatir
Cells(i, "F").Value = Cells(i, "D").Value & "/" & Cells(i, "E").Value
Next i
For i = sonsatir To 2 Step -1
If WorksheetFunction.CountIf([F:F], Cells(i, "F").Value) > 1 Then Rows(i).Delete
Next i
Range("F:F").Clear
Application.ScreenUpdating = True
End Sub
Merhabalar,
Bu İşlemi Biraz Modifiye Ederek, Örneğin A Sütünundaki Veriler B Sütünunda Varsa A Sütünunda Olmayan Verileri C Sütünuna Çıkarabilecek Şekilde Şekilendirebilinirmi ? Şimdiden Teşekkür Eder Sevgilerimi Sunarım.
Soruyu tam anlayamadım.
A sütununda olup B de olmayanları mı?
B de olup A sütununda olmayanları mı?
Kusura Bakmayın Tekrar Okuyunca Bende Tam Nedemek İstediğimi Anlayamadım Düzeltiyorum.
Örneğin A Sütünunda 6000 Kayıt Var,
B Sütünunda İse 500 Kayıt.
Yapmak İstediğim Şey İse A Sütünunda Olup B Sütünunda Olmayanları Ayrı Bir Sütüna Aktarmak Acaba Mümkündür Bu Şekilde Bir Şey Yapılabilirmi Değerli Bilginiz Rica Ediyorum.
Sub olmayani_ekle()
Application.ScreenUpdating = False
Range("C:C").Clear
sonsatir = Cells(Rows.Count, "A").End(3).Row
satir = 1
For i = 2 To sonsatir
If WorksheetFunction.CountIf([B:B], Cells(i, "A").Value) = 0 Then
satir = satir + 1
Cells(satir, "C").Value = Cells(i, "A").Value
End If
Next i
Application.ScreenUpdating = True
End Sub
Aşağıdaki şekilde deneyiniz.
Kod:Sub olmayani_ekle() Application.ScreenUpdating = False Range("C:C").Clear sonsatir = Cells(Rows.Count, "A").End(3).Row satir = 1 For i = 2 To sonsatir If WorksheetFunction.CountIf([B:B], Cells(i, "A").Value) = 0 Then satir = satir + 1 Cells(satir, "C").Value = Cells(i, "A").Value End If Next i Application.ScreenUpdating = True End Sub