Soru Macro ile veri birleştirme

Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Arkadaşlar merhaba,

Sayfa 1 de bir tablom var bu tablodaki verileri sayfa 2 b sutununda birleştirmek istiyorum. Birleştir formülü ile yapmaya çalıştım ancak her seferinde verilerin sayıları değişeceği için makro ile yapmak mantıklı olur düşündüm desteğinizi için teşekkürler.
 

Ekli dosyalar

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Bunun gibi bir şey mi istiyorsunuz?
Kod:
Sub kod()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
s2.Range("B2:B" & Rows.Count).ClearContents
For a = 2 To s1.Cells(Rows.Count, "A").End(3).Row
    s2.Cells(a, "B") = "TÜRKİYE İL : " & s1.Cells(a, "A") & _
                        " PLAKA : " & s1.Cells(a, "B") & _
                        " ÜRÜN : " & s1.Cells(a, "C")
Next
End Sub
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Merhaba,
Bunun gibi bir şey mi istiyorsunuz?
Kod:
Sub kod()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
s2.Range("B2:B" & Rows.Count).ClearContents
For a = 2 To s1.Cells(Rows.Count, "A").End(3).Row
    s2.Cells(a, "B") = "TÜRKİYE İL : " & s1.Cells(a, "A") & _
                        " PLAKA : " & s1.Cells(a, "B") & _
                        " ÜRÜN : " & s1.Cells(a, "C")
Next
End Sub
Çok teşekkürler emeğinize sağlık
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Rica ederim,
İyi çalışmalar...
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Rica ederim,
İyi çalışmalar...
Ömer bey tekrar merhaba bu konu ile alakalı tekrar desteğinize ihtiyacım var . Ekli excelde aynı olan veriler başlıkları ile birlikte sayfa 2 de birlestirmiştiniz sayfa 1 de birden fazla aynı il var ise sayfa 2 de tek satırda birleştirmek istersem nasıl yapabilirim mümkün olursa plaka ve ürünler aynı satırda virgülle ayirmak yeterli olur .Tesekkurler
 

Ekli dosyalar

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Buyurunuz...
Kod:
Sub kod()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
ayr = ", "
x = 2

son = s1.Cells(Rows.Count, "A").End(3).Row
s2.Range("B2:B" & Rows.Count).ClearContents
dz = s1.Range("A2:C" & son)

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        For b = a + 1 To UBound(dz)
            If dz(a, 1) = dz(b, 1) Then
                dz(a, 2) = dz(a, 2) & ayr & dz(b, 2)
                dz(a, 3) = dz(a, 3) & ayr & dz(b, 3)
                dz(b, 1) = ""
                dz(b, 2) = ""
                dz(b, 3) = ""
            End If
        Next
    End If
Next

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        s2.Cells(x, "B") = "TÜRKİYE İL : " & dz(a, 1) & _
                            " PLAKA : " & dz(a, 2) & _
                            " ÜRÜN : " & dz(a, 3)
        x = x + 1
    End If
Next
End Sub
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Merhaba,
Buyurunuz...
Kod:
Sub kod()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
ayr = ", "
x = 2

son = s1.Cells(Rows.Count, "A").End(3).Row
s2.Range("B2:B" & Rows.Count).ClearContents
dz = s1.Range("A2:C" & son)

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        For b = a + 1 To UBound(dz)
            If dz(a, 1) = dz(b, 1) Then
                dz(a, 2) = dz(a, 2) & ayr & dz(b, 2)
                dz(a, 3) = dz(a, 3) & ayr & dz(b, 3)
                dz(b, 1) = ""
                dz(b, 2) = ""
                dz(b, 3) = ""
            End If
        Next
    End If
Next

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        s2.Cells(x, "B") = "TÜRKİYE İL : " & dz(a, 1) & _
                            " PLAKA : " & dz(a, 2) & _
                            " ÜRÜN : " & dz(a, 3)
        x = x + 1
    End If
Next
End Sub
Emeğinize sağlık teşekkürler
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Emeğinize sağlık teşekkürler
Merhaba,
Buyurunuz...
Kod:
Sub kod()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")
ayr = ", "
x = 2

son = s1.Cells(Rows.Count, "A").End(3).Row
s2.Range("B2:B" & Rows.Count).ClearContents
dz = s1.Range("A2:C" & son)

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        For b = a + 1 To UBound(dz)
            If dz(a, 1) = dz(b, 1) Then
                dz(a, 2) = dz(a, 2) & ayr & dz(b, 2)
                dz(a, 3) = dz(a, 3) & ayr & dz(b, 3)
                dz(b, 1) = ""
                dz(b, 2) = ""
                dz(b, 3) = ""
            End If
        Next
    End If
Next

For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        s2.Cells(x, "B") = "TÜRKİYE İL : " & dz(a, 1) & _
                            " PLAKA : " & dz(a, 2) & _
                            " ÜRÜN : " & dz(a, 3)
        x = x + 1
    End If
Next
End Sub
Ömer bey çok özür dilerim sanırım bir yerde hata yaptım bir şey eklemeyi unuttum lütfen kusura bakmayın.
sayfa1 de ki verileri sayfa2 "b" satırında birleştirmiştik . Sayfa 1 de bulunan "il ismi" ve "plaka" verilerini daha iyi okuyabilmem adına sayfa 2 de A satırına "il ismi" C satırına "plaka" yı getirmek istiyorum . Yukarıdaki kodlara ekleme yapıp kodların yanlarına açıklama yazabilir misiniz? Desteğinizi için çok teşekkür ederim.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Kodda kullanılan dz isimli dizinin birinci sütunu il, ikinci sütunu birleştirilmiş plaka, üçüncü sütünunu da birleştirilmiş ürün bilgilerini içermektedir. İsteğiniz için yukarıdaki koddaki son döngüyü aşağıdaki şekilde güncelleyiniz.
Rich (BB code):
For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        s2.Cells(x, "B") = "TÜRKİYE İL : " & dz(a, 1) & _
                            " PLAKA : " & dz(a, 2) & _
                            " ÜRÜN : " & dz(a, 3)
        s2.Cells(x, "A") = dz(a, 1) 'İl bilgisi
        s2.Cells(x, "C") = dz(a, 2) 'Plaka bilgisi
        x = x + 1
    End If
Next
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Merhaba,
Kodda kullanılan dz isimli dizinin birinci sütunu il, ikinci sütunu birleştirilmiş plaka, üçüncü sütünunu da birleştirilmiş ürün bilgilerini içermektedir. İsteğiniz için yukarıdaki koddaki son döngüyü aşağıdaki şekilde güncelleyiniz.
Rich (BB code):
For a = LBound(dz) To UBound(dz)
    If dz(a, 1) <> "" Then
        s2.Cells(x, "B") = "TÜRKİYE İL : " & dz(a, 1) & _
                            " PLAKA : " & dz(a, 2) & _
                            " ÜRÜN : " & dz(a, 3)
        s2.Cells(x, "A") = dz(a, 1) 'İl bilgisi
        s2.Cells(x, "C") = dz(a, 2) 'Plaka bilgisi
        x = x + 1
    End If
Next
Süper olmuş tek bir sorun plaka bilgisi kaçtane var ise hepsini yan yana yazıyor. Tek yazmasını sağlayabilir miyiz? Teşekkürler.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Açıkçası isteğinizi anlayamadım.
Neye göre tek yazılacak, örnek olarak bir satırda üç farklı plaka verisi var ise hangisi yazılmalı?
Mesela; 5 numaralı mesaja eklediğiniz örnek dosyanızda yer alan ANKARA verisi nasıl alınacak? (PLAKA: 6, 3, 2)
 
Katılım
18 Ağustos 2017
Mesajlar
119
Excel Vers. ve Dili
excel.2013
Altın Üyelik Bitiş Tarihi
21/08/2022
Açıkçası isteğinizi anlayamadım.
Neye göre tek yazılacak, örnek olarak bir satırda üç farklı plaka verisi var ise hangisi yazılmalı?
Mesela; 5 numaralı mesaja eklediğiniz örnek dosyanızda yer alan ANKARA verisi nasıl alınacak? (PLAKA: 6, 3, 2)
Evet biraz karışık oldu plakalar sabit kalıyor kusura bakmayın. Şu şekilde il Ankara plaka 6 il İstanbul plaka 34 tek kayıt olacak
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Bu satırı silin.
Kod:
dz(a, 2) = dz(a, 2) & ayr & dz(b, 2)
 
Katılım
11 Eylül 2017
Mesajlar
42
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
23.12.2021
ben birşey sormak istiyorum bir tane proğram yapım internet aracılığıyla veri toplamak istiyorum. anket gibi bişey ama yapacağım anket değil. excell visual basic (VBA) de yaptığımı internet aracılığıyla otomatik kullanmak ve birçok kişinin giriş yapıp kullanması gibi gibi birşey. Bununla ilgili bir fikir verirseniz sevinirim
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
ben birşey sormak istiyorum bir tane proğram yapım internet aracılığıyla veri toplamak istiyorum. anket gibi bişey ama yapacağım anket değil. excell visual basic (VBA) de yaptığımı internet aracılığıyla otomatik kullanmak ve birçok kişinin giriş yapıp kullanması gibi gibi birşey. Bununla ilgili bir fikir verirseniz sevinirim
Merhaba,
Konu bütünlüğü açısından sorularınızı yeni konu açarak sormanız daha doğru olacaktır.
 
Üst