KutoolsforOffice — Tek çözüm, beş güçlü araç.Daha az çabayla daha fazlasını başarmak.

Sınırlayıcıya Göre Metin Dizgelerini Birden Fazla Satıra Böl – 3 Hızlı İpuçları

YazarXiaoyang Değiştirme Tarihi

Normalde, hücre içeriğini virgül, nokta, noktalı virgül, eğik çizgi gibi belirli bir sınırlayıcıya göre birden fazla sütuna bölmek için **Metni Sütunlara Dönüştür** özelliğini kullanabilirsiniz. Ancak bazen — aşağıda ekran görüntüsünde gösterildiği gibi — sınırlayıcılı hücre içeriğini birden fazla satıra bölmek ve diğer sütunlardaki verileri bu satırlarda tekrarlamak gerekebilir. Excel’de bu görevi yerine getirmek için etkili yöntemleriniz var mı? Bu öğretici, Excel’de bu işlemi gerçekleştirmenize yardımcı olacak bazı pratik ve etkili yolları sizinle paylaşacak.

metni birden çok satıra böl

Video: Sınırlayıcıya göre metin dizgelerini birden fazla satıra bölme

 


Yöntem A: VBA koduyla sınırlayıcılı metni birden fazla satıra bölme

Bu bölümde, belirli bir sınırlayıcıya göre hücre içeriklerini bölmek için size iki adet VBA kodu tanıtacağım.

Virgül, boşluk, noktalı virgül vb. ile ayrılmış metni bölün

Aşağıdaki kod, metin dizgelerini virgül, boşluk, noktalı virgül, eğik çizgi gibi yaygın sınırlayıcılarla bölmek için size yardımcı olabilir. Lütfen aşağıdaki adımları izleyin:

Not: Bu kod Geri Al özelliğini desteklemez; kullanmadan önce verilerinizi yedeklemenizi öneririz.

Adım 1: VBA modülü düzenleyicisini açın ve kodu kopyalayın

1. Kullanmak istediğiniz sayfayı etkinleştirin. Ardından, “Microsoft Visual Basic for Applications” penceresini açmak için “Alt” + “F11” tuşlarına basın.

2. Açılan pencerede yeni bir boş modül oluşturmak için "Insert" (Ekle) > "Module" (Modül) seçeneğine tıklayın.

3. Ardından, aşağıdaki kodu boş bir modüle kopyalayıp yapıştırın.

VBA kodu: Belirli bir sınırlayıcıya göre metni bölme (virgül, nokta, boşluk vb.)

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Application.InputBox("Type delimiter:", "Kutools for Excel", , , , , , 2)
    If xSplitChar = "" Then Exit Sub
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub   

Adım 2: Sonucu almak için kodu çalıştırın

1. Kodu yapıştırdıktan sonra, sınırlayıcılı metni bölmek istediğiniz hücreleri seçmeniz için bir istem kutusu açılsın diye "F5" tuşuna basın; bkz. ekran görüntüsü:

sınırlayıcılı metin içeren hücreleri seçmek için VBA kodu

2. Ardından "OK" (Tamam) seçeneğine tıklayın; verileri bölmek istediğiniz ayırıcıyı girmeniz için yeni bir istem kutusu açılacaktır. Burada bir virgül ve boşluk (, ) giriyorum; bkz. ekran görüntüsü:

verileri bölmek için kullanılacak ayırıcıyı yazmak üzere VBA kodu

3. Son olarak, "Tamam" düğmesine tıklayın. Ardından, seçilen metin dizgelerinin virgüle göre satırlara bölündüğünü ve diğer ilgili sütunlardaki verilerin aşağıda gösterilen ekran görüntülerindeki gibi tekrarlandığını göreceksiniz:

seçilen metin dizgeleri satırlara bölündü

Satır sonuyla ayrılmış metni bölme

Hücre içeriğiniz satır sonlarıyla ayrılmışsa ve bunları birden fazla satıra bölmek istiyorsanız, işinize yarayabilecek başka bir VBA kodu aşağıdadır.

Not: Bu kod Geri Al özelliğini desteklemez; kullanmadan önce verilerinizi yedeklemenizi öneririz.

Adım 1: VBA modülü düzenleyicisini açın ve kodu kopyalayın

1. "Microsoft Visual Basic for Applications" penceresini açmak için "Alt" + "F11" tuşlarına basın.

2. Açılan pencerede yeni bir boş modül oluşturmak için **Ekle > Modül** seçeneğine tıklayın.

3. Ardından, aşağıdaki kodu boş bir modüle kopyalayıp yapıştırın.

VBA kodu: Satır sonuna göre metni bölme

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Chr(10)
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub 

Adım 2: Sonucu almak için kodu çalıştırın

1. Kodu yapıştırdıktan sonra, bölmek istediğiniz hücreleri seçmek için açılan kutudaki **Lütfen seçin** seçeneğine tıklayın; bkz. ekran görüntüsü:

bölünmek üzere aralığı seçmek için VBA kodu

2. Ardından "Tamam" (OK) düğmesine tıklayın; seçilen hücrelerdeki veriler, aşağıda gösterilen ekran görüntüsündeki gibi satırlara bölünür:

seçilen hücrelerdeki veriler satırlara bölündü

Yöntem B: Kutools for Excel ile sınırlayıcılı metni 10 saniyede birden fazla satıra bölme

"Kutools for Excel" yüklüyse, metin dizgelerini belirttiğiniz herhangi bir sınırlayıcıya göre birden fazla satıra bölmek için "Birden Çok Satıra Böl" özelliğini kullanabilirsiniz. Lütfen aşağıdaki adımları izleyin:

Kutools for Excelkarmaşık görevleri kolaylaştırmak için 300’den fazla gelişmiş özelliğe sahiptir ve yaratıcılığı ile verimliliği artırır.Yapay zeka yetenekleriyle entegre, Kutools görevleri hassaslıkla otomatikleştirerek veri yönetimi sürecini zahmetsiz hale getirir.Kutools for Excel hakkında detaylı bilgi…         Ücretsiz deneme…

Adım 1: Birden çok satıra böl özelliğini seçin

"Kutools" > "Birleştir ve Ayır" > "Birden çok satıra böl" seçeneğine tıklayın; bkz. ekran görüntüsü:

Kutools > Birleştir ve Böl > Verileri Satırlara Böl seçeneğine tıklayın

Adım 2: Bölmek için veri hücrelerini ve sınırlayıcıyı belirtin

Açılan iletişim kutusunda aşağıdaki seçenekleri kullanın:

  • 1). "Aralık (tek sütun)" metin kutusundan bölmek istediğiniz hücre listesini seçin;
  • 2). Ardından verilerinizi ayırmak için ayırıcıyı seçin; burada "Diğer" seçeneğini işaretleyip metin kutusuna virgül ve boşluk (, ) giriyorum;
  • 3). Son olarak, "Tamam" düğmesine tıklayın.
iletişim kutusunda veri hücrelerini ve bölme sınırlayıcısını belirtin

Artık sınırlayıcılı metin dizgeleri içeren seçili hücreler, belirtilen ayırıcıya göre aşağıda gösterildiği gibi birden fazla satıra dönüştürüldü; bkz. ekran görüntüsü:

seçilen hücreler birden çok satıra dönüştürüldü

İpucu: Orijinal verileri geri yüklemek istiyorsanız, Ctrl + Z tuşlarına basmanız yeterlidir.

Kullanımı kolay mı? Bu özellik ilginizi çektiyse, hemen 30 günlük ücretsiz deneme sürümünü indirmek için buraya tıklayın!


Yöntem C: Power Query ile sınırlayıcılı metni birden fazla satıra bölme

Office 365 veya Excel 2016 ve sonraki sürümlerini kullanıyorsanız, “Power Query”, sınırlayıcılı metni birden fazla satıra ya da sütuna bölmek için size güçlü bir çözüm sunar. Özellikle orijinal verileriniz değiştiğinde “Veriyi Böl” işlemini otomatik olarak yenilemek istiyorsanız büyük kolaylık sağlar. Bu işlemi gerçekleştirmek için lütfen aşağıdaki adımları izleyin:

Adım 1: Veri tablosunu Power Query’e aktarın

1. Kullanmak istediğiniz veri aralığını seçin ve ardından "Data" (Veri) > "From Table" (Tablodan) seçeneğine tıklayın; bkz. ekran görüntüsü:

İpucu: Excel 2019 ve Office 365 sürümlerinde **Veri** > **Tablodan/Aralıktan** seçeneğine tıklayın.

Veri > Tablodan seçeneğine tıklayın

2. Açılan "Create Table" (Tablo Oluştur) iletişim kutusunda bir tablo oluşturmak için "OK" (Tamam) düğmesine tıklayın; bkz. ekran görüntüsü:

tablo oluşturmak için Tamam düğmesine tıklayın

3. Artık verilerle birlikte "Power Query Editor" (Power Query Düzenleyici) penceresi görüntülenir; ekran görüntüsüne bakın:

Power Query Düzenleyici penceresi verilerle birlikte görüntülendi

Adım 2: Power Query’de dönüşümleri gerçekleştirin

1. Bölmek istediğiniz sütunu seçin. Ardından "Home" (Giriş) > "Split Column" (Sütunu Böl) > "By Delimiter" (Sınırlayıcıya Göre) seçeneğine tıklayın; bkz. ekran görüntüsü:

Giriş > Sütunu Böl > Sınırlayıcıya Göre seçeneğine tıklayın

2. "Split Column by Delimiter" (Sütunu Sınırlayıcıya Göre Böl) iletişim kutusunda:

Metin dizgelerini virgül, boşluk, noktalı virgül gibi ayırıcılarla bölmek için şunu yapın:

  • 1). "Ayırıcıyı seçin veya girin" açılır listesinden verilerinizin hangi ayırıcıyla ayrıldığını belirleyin;
  • 2). “Bölme noktası” bölümünden “Ayırıcının her oluşumunda” seçeneğini seçin.
  • 3). Ardından "Gelişmiş Seçenekler" düğmesine tıklayarak bölümü genişletin ve "Bölünecek" başlığı altında "Satırlar" seçeneğini işaretleyin.
  • 4). Son olarak, bu iletişim kutusunu kapatmak için "Tamam" düğmesine tıklayın.
metni virgül, boşluk, noktalı virgül vb. ile bölmek için iletişim kutusundaki seçenekleri belirtin

Metin dizgelerini satır sonuna göre birden fazla satıra bölmek için şunu yapın:

  • 1). “Ayırıcıyı seçin veya girin” açılır listesinden “Özel” seçeneğini belirleyin;
  • 2). "Özel karakter ekle" açılır listesinden "Satır Sonu" seçeneğine tıklayın; "#(lf)" karakterleri otomatik olarak "Özel" bölümündeki metin kutusuna eklenecektir.
  • 3). “Bölme noktası” bölümünden “Ayırıcının her oluşumunda” seçeneğini seçin.
  • 4). Ardından, bölümü genişletmek için "Gelişmiş Seçenekler"e tıklayın ve "Split into" (Bölmeye göre) bölümünde "Rows" (Satırlar) seçeneğini belirleyin.
  • 5). Son olarak, bu iletişim kutusunu kapatmak için “Tamam” düğmesine tıklayın.
metni satır sonuyla bölmek için iletişim kutusundaki seçenekleri belirtin

3. Artık “Veri Seç” özelliği, aşağıda gösterilen ekran görüntüsünde olduğu gibi birden fazla satıra bölünmüş durumda:

seçilen veriler birden çok satıra bölündü

Adım 3: Power Query sonucunu bir Excel tablosuna aktarın

1. Ardından, verileri çalışma sayfanıza aktarmalısınız. "Home" (Giriş) > "Close & Load" (Kapat ve Yükle) > "Close & Load / Close & Load To" (Kapat ve Yükle / Kapat ve Şuraya Yükle) seçeneğine tıklayın (burada "Close & Load" seçeneğine tıklıyorum); bkz. ekran görüntüsü:

verileri yüklemek için Giriş > Kapat ve Yükle seçeneğine tıklayın

İpucu: “Kapat ve Yükle” seçeneği verileri yeni bir çalışma sayfasına aktarır; “Kapat ve Şuraya Yükle” seçeneğiyle ise verileri istediğiniz başka bir sayfaya taşıyabilirsiniz.

2. Son olarak, veriler yeni bir çalışma sayfasına yüklenecektir; bkz. ekran görüntüsü:

veriler yeni bir çalışma sayfasına yüklendi

İpucu: Orijinal tablodaki verilerinizi sık sık güncellemeniz gerekiyorsa endişelenmeyin; sonuç tablosuna sağ tıklayıp “Yenile” seçeneğine tıklayarak yeni sonucu anında ve dinamik olarak alabilirsiniz.


İlgili Makaleler:

  • Hücre değerlerini birden çok sütuna böl
  • Excel'de, hücre değerlerini virgül, boşluk, nokta, satır sonu gibi belirli ayırıcılarla birden çok sütuna bölmek istediğinizde genellikle yerleşik **Metni Sütunlara Dönüştür** özelliği size bu işlemi adım adım gerçekleştirmede yardımcı olur. Bu makalede ise, hücre değerlerini daha kolay ve hızlı bir şekilde birden çok sütuna veya satıra bölmek için bazı kullanışlı püf noktalarını sizinle paylaşacağız.
  • Bir hücreyi birden çok satıra veya sütuna böl
  • Diyelim ki noktalı virgül gibi belirli bir karakterle ayrılmış çok sayıda içeriğe sahip tek bir hücreniz var; bu uzun hücreyi noktalı virgüle göre birden çok satıra veya sütuna bölmek istiyorsunuz. Excel’de bunu çözmek için hızlı yollarınız var mı?
  • Metin dizesini büyük/küçük harfe göre böl
  • Excel’de metinleri genellikle **Metni Sütunlara Dönüştür** özelliğini kullanarak sabit genişlik veya belirli bir ayırıcıya göre böleriz. Peki ya metni **büyük harf ve küçük harfe göre** ayırmayı denediniz mi? Örneğin, aşağıdaki ekran görüntüsünde gösterildiği gibi, bir veri listeniz varsa ve bunu iki sütuna bölmek istiyorsanız — bir sütunda **“Küçük Harf İçerir”**, diğerinde **“Büyük Harf İçerir”** metinleri olsun — standart **Metni Sütunlara Dönüştür** özelliği bu işlemi desteklemez. Ancak Excel’de metin dizesini büyük/küçük harfe göre hızlıca bölmek için size pratik bir püf noktası önerebilirim.
  • Sayıyı tek tek rakamlara böl
  • Aşağıdaki ekran görüntüsünde gösterildiği gibi bir sayıyı tek tek rakamlarına ayırmak mı istiyorsunuz? İşte bu işlem için size iki pratik yöntem sunuyoruz.