Veri tablosundaki değerleri ilgili hücre içinde birleştirme.

mehmetmet

Altın Üye
Katılım
27 Ekim 2009
Mesajlar
98
Excel Vers. ve Dili
2013 Türkçe
Altın Üyelik Bitiş Tarihi
29.11.2025
Bir sütunda yer alan ve birden fazla değere sahip olan değerin sonuç sayfasındaki değerinin karşısına bu verilerin tek hücrede aktarılımsını sağlamak istiyorum. Daha açık bir dille ifade etmek gerekirse;
A sütununda yer alan "A Kişisi" için B sütununda yer alan A1 ve A4 değerleri yer almış olsun. sonuç sayfasında "A Kişisi" karşısında A1-A4 şeklinde yer almasını sağlamaya çalışıyorum. Konu hakkında yardımcı olabilirseniz memnun olurum.

A Kişisi A1
B Kişisi A3
A Kişisi A4

SSonuç:
A Kişisi A1-A4 şeklinde olmasını bekliyorum.
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Safya1 ve Sonuç ismin de iki sayfa oluşturun ve kodu bir modüle atayarak deneyiniz.
Kod:
Sub Birleştirme()
Dim s1 As Worksheet: Dim s2 As Worksheet: Dim rng As Range
Dim iSat As Integer: Dim i As Integer: Dim ii As Integer
Set s1 = Sheets("Sayfa1"): Set s2 = Sheets("Sonuç")
satir = s1.Cells(Rows.Count, 1).End(xlUp).Row
Set rng = s1.Range("A1:A" & satir)
s2.Range("A1:A" & Rows.Count).Cells.ClearContents
Dim varConctnt As Variant
sat = 1: yaz = 1
For ii = 1 To rng.Rows.Count
If WorksheetFunction.CountIf(s1.Range("A1:A" & sat), s1.Range("A" & sat)) > 1 Then GoTo 10
For iSat = 1 To rng.Rows.Count
If rng(sat, 1) = rng(iSat, 1) Then
varConctnt = varConctnt & "-" & rng(iSat, 2).Value
End If
Next iSat
s2.Range("A" & yaz) = s1.Range("A" & sat) & " " & Mid(varConctnt, 2)
varConctnt = Empty
yaz = yaz + 1
10:
sat = sat + 1
Next ii
MsgBox "İŞLEM TAMAMLANDI.!!!", vbInformation, "BİLGİNİZE.!!!"
End Sub
 
Son düzenleme:
Üst