• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

İsim Ayıklayıp Yazdırmak

  • Konbuyu başlatan Konbuyu başlatan mor45
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Eylül 2005
Mesajlar
303
Excel Vers. ve Dili
2003 excel türkçe
A SÜTUNUNDA:ALİ-KAZIM-İSA-MURAT Yazılı
B Sütununda : ALİ-İSA-MURAT Yazılı
C Sütununda : RECEP-İSA -HASAN Yazılı
D Sütununda aynı olan adları yazmadan hepsini yazmasını istiyorum.
Yani:ALİ-KAZIM-İSA-MURAT-RECEP-HASAN gibi.Formül ile nasıl yazdırabilirim.
Yardımlarınızı bekliyorum.
 
Son düzenleme:
Merhaba,

İstenileni formül ile yapmak için birden çok yardımcı sütun kullanmanız gerekir. İşlemi oldukça uzatıp yavaşlatır, bu yüzden tavsiye etmem. Aşağıdaki kodları çalıştırın.
Verilerin 2.satırdan başlanıldığı düşünülmüştür.

Kod:
Sub Benzersiz_Liste()

    Dim d As Object, i As Long, j As Integer, deg As String, s, t

    Set d = CreateObject("Scripting.Dictionary")
    
    Application.ScreenUpdating = False
    Range("D[COLOR="red"]2[/COLOR]:D" & Rows.Count).ClearContents
    
    For i = [COLOR="Red"]2[/COLOR] To Cells(Rows.Count, "A").End(xlUp).Row
        deg = Cells(i, "A") & "-" & Cells(i, "B") & "-" & Cells(i, "C")
        t = Split(Replace(deg, " ", ""), "-")
        For j = 0 To UBound(t)
            If Not d.exists(t(j)) Then
                s = t(j)
                d.Add t(j), s
                Cells(i, "D") = Cells(i, "D") & "-" & s
            End If
        Next j
        Cells(i, "D") = WorksheetFunction.Substitute(Cells(i, "D"), "-", "", 1)
    Next i
    
    Set d = Nothing
    Application.ScreenUpdating = True

End Sub
 
Hayır olmamış
d sütunun hepsini altalta yazmalıydı
 
Son düzenleme:
Ekteki sonucç gibi olmalıydı.
altalta yazmalıydı. yanyana degil


ALİ
KAZIM
İSA
MURAT
RECEP
HASAN
 
Yani:ALİ-KAZIM-İSA-MURAT-RECEP-HASAN.

İlk mesajınızda bu şekilde olması gerektiğini söylememiş miydiniz. Sorularınızı daha anlaşılır yöneltmenizi rica ederim.

Alt alt olacaksa, örneğin veriler A1 B1 C1 de diyelim istediğiniz gibi düzenledik. A2 B2 C2 de veri varsa bunları nereye yazacak.

Yada verileriniz A B C sütunlarında aralarında "-" simgesi olarak yan yana değilde, bu sütunlarda alt alta mı?

.
 
Evet sütünlarda alt alta yazılı. Eskiden örnek dosyayı gönderiyorduk buna göre kolay oluyordu.Şimdi gönderemiyoruz.
Ondan dolayı bende anlatırken yanlış anlatmış olabilirim.

A Sütunu B Sütunu C Sütunu D Sütunu ( Sonu Sütunu)
Ali Kayan Adem Küçük Rasim Uz Ali Kayan
Rıza Özsoy Rıza Özsoy Rıza Özsoy
Adem Küçük
Rasim Uz
anlatmak istediğim d sütunundaki gibi yazması bunu yapacağım bir formül
İlginize teşekkür ediyorum,
 
Son düzenleme:
yazıları sütun olarak yazıyorum.
ama yine de satıra dönüştürüyor,
D Sütununda isimleri tektek yazmasın istedim çift olanlar yinelenmeyecek,
 
Bu şekilde deneyin.

Verilerin 1 satırdan başlanıldığı düşünüldü.

Kod:
Sub Benzersiz_Liste()

    Dim d As Object, son As Long, a As Range, sat As Long, deg

    Set d = CreateObject("Scripting.Dictionary")
    son = [A:C].Find("*", , , , xlByRows, xlPrevious).Row
    
    Application.ScreenUpdating = False
    Range("D1:D" & Rows.Count).ClearContents
    
    sat = 1
    For Each a In Range("A1:C" & son)
        deg = a.Value
        If Not d.exists(deg) Then
            d.Add deg, Nothing
            Cells(sat, "D") = a.Value
            sat = sat + 1
        End If
    Next a
    
    Set d = Nothing
    Application.ScreenUpdating = True

End Sub

.
 
Geri
Üst