Excel sütundaki tekrar eden kayıtları makro kullanarak virgül ile hücreye yazmak (Vba kodları)
Excel de aynı sütunda tekrar eden kayıtlara karşılık gelen farklı verileri farklı bir tabloda aralarına virgül koyarak tek bir hücrede sıralı şekilde görmek isteyebiliriz.
Örneğin; sayfa1 de böyle bir tablomuzun olduğu düşünelim. Görüldüğü gibi bazı tc numaralarına karşılık Durumu sütununda farklı ve tekrar eden değerler var. Bizim amacımız tek tip tc numaralarına karşılık gelen durumu kolonundaki verileri aralarına virgül koyarak yazmak


TC |
12345678910 |
78954678912 |
65478912345 |
45678978899 |
Excel içerisinde Alt+F11 tuşlarına basarak VBA ekranına giriyoruz. İnsert Module ile yeni modul ekledikten sonra aşağıdaki kodu module ekranına kopyalıyoruz.

'Bu fonksiyon Mayıs 2020'de balibey.net excel örnekleri için yapılmıştır…
Sub Calistir()
For i = 1 To 25
For j = 1 To 25
If (ThisWorkbook.Worksheets(2).Range("a" & i) = ThisWorkbook.Worksheets(1).Range("a" & j)) Then
If ThisWorkbook.Worksheets(2).Range("b" & i) = "" Then
ThisWorkbook.Worksheets(2).Range("b" & i) = ThisWorkbook.Worksheets(1).Range("c" & j)
Else
ThisWorkbook.Worksheets(2).Range("b" & i) = ThisWorkbook.Worksheets(2).Range("b" & i) & "," & ThisWorkbook.Worksheets(1).Range("c" & j)
End If
End If
Next j
Next i
End Sub
Not: & şeklinde belirtilen & işaretidir.
F5 tuşuna basıp fonksiyonu ya da başka bir deyişle makroyu çalıştırdığımızda. aşağıdaki gibi görüntülenecektir.
TC | DURUMU |
12345678910 | Alacaklı,Borçlu |
78954678912 | Borçlu,Alacaklı |
65478912345 | Muhlis,Davalı,Davacı,Muhlis,Alacaklı,Satıcı |
45678978899 | Borçlu,Muhlis,Alacaklı,Davacı |
Dosyayı İndir