Aynı numaralı farklı içerikli hücreleri birleştirmek

Katılım
1 Ocak 2010
Mesajlar
87
Excel Vers. ve Dili
Türkçe 2007
Merhabalar;

Yapmak istediğimi kısaca şöyle özetleyeyim:

a sutunu b sutunu
321123 SIYAH
321123 MAVI
321123 BEYAZ
321123 KIRMIZI


Yinelenen kod sadece bir tane olsun ( Hücreleri birleştir ve ortala ) kodun karşısında olan hücreler aynı kalsın. Ekte bulunan dosyada yapmak istediğimin manuel olarak yapılmışı mevcut. Bu konuda bana yardımcı olursanız çok sevinirim.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,733
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

İstediğiniz işlemi özet tablo ile rahatlıkla yapabilirsiniz. Forumda örnekler mevcut. Ararsanız ulaşabilirsiniz.
 
Katılım
1 Ocak 2010
Mesajlar
87
Excel Vers. ve Dili
Türkçe 2007
Selamlar,

İstediğiniz işlemi özet tablo ile rahatlıkla yapabilirsiniz. Forumda örnekler mevcut. Ararsanız ulaşabilirsiniz.
Merhaba;

özet işlem tablosu ile hücre birleştirme olmuyor sanırım. Örnek olarak yapabilirseniz sevinirim. Teşekkürler..
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,733
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Ekteki örnek dosyayı incelermisiniz.

VERİ-ÖZET TABLO menüsünden inceleyebilirsiniz.
 

Ekli dosyalar

Katılım
1 Ocak 2010
Mesajlar
87
Excel Vers. ve Dili
Türkçe 2007
Selamlar,

Ekteki örnek dosyayı incelermisiniz.

VERİ-ÖZET TABLO menüsünden inceleyebilirsiniz.
Evet bunda biraz yaklaştık ama numara olan sütunlar birleşik olmalı. Bu 5000 satırlık bir veride bunları tek tek birleştirmek oldukça zaman alıcı olur. Vermiş olduğunuz ekteki örnekte numaralı olan kısım birleşik olsa hiç bir sorun kalmayacak ona bir çare bulabilir miyiz? Yardımlarınız için çok teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,733
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Özet tabloda istediğiniz tarzda çok fazla biçimlendirme yapma şansımız yok. Bunun yerine aşağıdaki kodu deneyiniz.

Kod:
Option Explicit
 
Sub BİRLEŞTİR()
    Dim X As Long, BUL As Range, SAY As Long
    
    Columns("IV:IV").Delete
    Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("IV1"), Unique:=True
    
    For X = 2 To Range("IV65536").End(3).Row
        Set BUL = Range("A:A").Find(Cells(X, "IV"), LookAt:=xlWhole)
        If Not BUL Is Nothing Then
        SAY = WorksheetFunction.CountIf(Range("A:A"), Cells(X, "IV"))
        If SAY > 1 Then
        
        With Range("A" & BUL.Row & ":A" & BUL.Row + SAY - 1)
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .WrapText = False
            .Orientation = 0
            .AddIndent = False
            .IndentLevel = 0
            .ShrinkToFit = False
            .ReadingOrder = xlContext
             Application.DisplayAlerts = False
            .MergeCells = True
             Application.DisplayAlerts = True
        End With
        
        End If
        End If
    Next
    
    Columns("IV:IV").Delete
    
    Set BUL = Nothing
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Katılım
1 Ocak 2010
Mesajlar
87
Excel Vers. ve Dili
Türkçe 2007
Selamlar,

Özet tabloda istediğiniz tarzda çok fazla biçimlendirme yapma şansımız yok. Bunun yerine aşağıdaki kodu deneyiniz.

Kod:
Option Explicit
 
Sub BİRLEŞTİR()
    Dim X As Long, BUL As Range, SAY As Long
    
    Columns("IV:IV").Delete
    Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("IV1"), Unique:=True
    
    For X = 2 To Range("IV65536").End(3).Row
        Set BUL = Range("A:A").Find(Cells(X, "IV"), LookAt:=xlWhole)
        If Not BUL Is Nothing Then
        SAY = WorksheetFunction.CountIf(Range("A:A"), Cells(X, "IV"))
        If SAY > 1 Then
        
        With Range("A" & BUL.Row & ":A" & BUL.Row + SAY - 1)
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .WrapText = False
            .Orientation = 0
            .AddIndent = False
            .IndentLevel = 0
            .ShrinkToFit = False
            .ReadingOrder = xlContext
             Application.DisplayAlerts = False
            .MergeCells = True
             Application.DisplayAlerts = True
        End With
        
        End If
        End If
    Next
    
    Columns("IV:IV").Delete
    
    Set BUL = Nothing
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
Teşekkür ederim. Biraz üzerinde çalışırsam bu bilgilerle istediğim tabloyu oluşturacağım sanırım. Çok teşekkürler..
 
Üst