• DİKKAT

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

A sütununda tire ile birleştirilmiş sayıları satırlara dağıtma

S.Yiğit

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2008
Mesajlar
1,748
Excel Vers. ve Dili
2019 TR
Merhaba,


A sütununda bulunan verileri c sütunundakiler gibi yapmam lazım.
Arasında Tire olanları aşağı doğru satırlara dağıtacak. Ekteki örnekte nasıl olması gerekiyorsa manuel yaptım. 2003 formatında örneğim ektedir. Yardımcı olacaklara şimdiden teşekkürler.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları dener misiniz?

Kod:
Sub Liste_Duzenle()
    
    Dim i   As Long, _
        j   As Long, _
        k   As Integer, _
        dz() As String, _
        a
    
    Application.ScreenUpdating = False
    
    For i = 2 To Cells(Rows.Count, "A").End(3).Row
        a = Split(Cells(i, "a"), "-")
        For k = 0 To UBound(a)
            j = j + 1
            ReDim Preserve dz(1 To j)
            dz(j) = a(k)
        Next k
    Next i
    
    Range("A2").Resize(j, 1) = Application.WorksheetFunction.Transpose(dz)
    Application.ScreenUpdating = True
    
    MsgBox "İşlem Tamamdır.... " & j
    
End Sub
 
Hocam merhaba,

Az kalsın olmamış diye mesaj atacaktım. Sonradan hatayı kendimde aramaya karar verdim ve verileri yanlış dağıttığımı anladım. :) Kod güzel olmuş, elinize sağlık.
 
Hocam merhaba,

Az kalsın olmamış diye mesaj atacaktım. Sonradan hatayı kendimde aramaya karar verdim ve verileri yanlış dağıttığımı anladım. :) Kod güzel olmuş, elinize sağlık.

Güle güle kullanınız :)
 
Merhaba,

Aşağıdaki kodları dener misiniz?

Kod:
Sub Liste_Duzenle()
    
    Dim i   As Long, _
        j   As Long, _
        k   As Integer, _
        dz() As String, _
        a
    
    Application.ScreenUpdating = False
    
    For i = 2 To Cells(Rows.Count, "A").End(3).Row
        a = Split(Cells(i, "a"), "-")
        For k = 0 To UBound(a)
            j = j + 1
            ReDim Preserve dz(1 To j)
            dz(j) = a(k)
        Next k
    Next i
    
    Range("A2").Resize(j, 1) = Application.WorksheetFunction.Transpose(dz)
    Application.ScreenUpdating = True
    
    MsgBox "İşlem Tamamdır.... " & j
    
End Sub


Necdet hocam konuya burdan devam etmek daha uygun diye düşündüm. Aralarında tire işareti olan hücreleri altalta değil de yanlardaki hücrelere dağıtmak isteseydik nasıl bir kod yazacaktık. Varsayalım ki A1 hücresinde 100-200-300 değeri olsun. Bu durumda B1 hücresine 100'ü , C1 hücresine 200' ü , D1 hücresine de 300'ü nasıl getirebiliriz ? İlginiz şimdiden teşekkürler. :)
 
Sn excellcan merhaba,

Ekte Ali beyin bir KFT çalışması var. İşinizi görebilir.
 

Ekli dosyalar

Son düzenleme:
Necdet hocam konuya burdan devam etmek daha uygun diye düşündüm. Aralarında tire işareti olan hücreleri altalta değil de yanlardaki hücrelere dağıtmak isteseydik nasıl bir kod yazacaktık. Varsayalım ki A1 hücresinde 100-200-300 değeri olsun. Bu durumda B1 hücresine 100'ü , C1 hücresine 200' ü , D1 hücresine de 300'ü nasıl getirebiliriz ? İlginiz şimdiden teşekkürler. :)

Merhaba,

Bunun için kod ya da fonksiyon yazmaya gerek yok. Metni sütunlara dönüştür seçeneği size bu olanağı sağlar.
 
Geri
Üst