Skip to main content

Excel'de yinelenen satırları sütunlara nasıl dönüştürebilirsiniz?

Author: Xiaoyang Last Modified: 2025-06-10

Diyelim ki Excel'de bir veri aralığınız var ve şimdi aşağıdaki ekran görüntüsünde gösterildiği gibi yinelenen satırları birden fazla sütuna dönüştürmek istiyorsunuz, bu görevi çözmek için iyi bir fikriniz var mı?

Yinelenen satırları VBA kodu ile sütunlara dönüştürme

 transpose duplicate rows to columns


arrow blue right bubble Yinelenen satırları VBA kodu ile sütunlara dönüştürme

Ne yazık ki, Excel'de bunu ele almak için doğrudan bir yol yok, ancak bunu çözmek için bir VBA kodu oluşturabilirsiniz, lütfen şu adımları izleyin:

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

2. Ekle > Modül'ü tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın.

VBA kodu: Yinelenen satırları birden fazla sütuna dönüştürme

Sub ConvertTable()
'Updateby Extendoffice
Dim xArr1 As Variant
Dim xArr2 As Variant
Dim InputRng As Range, OutRng As Range
Dim xRows As Long
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
xArr1 = InputRng.Value
t = UBound(xArr1, 2): xRows = 1
With CreateObject("Scripting.Dictionary")
    .CompareMode = 1
    For i = 2 To UBound(xArr1, 1)
        If Not .exists(xArr1(i, 1)) Then
            xRows = xRows + 1: .Item(xArr1(i, 1)) = VBA.Array(xRows, t)
            For ii = 1 To t
                xArr1(xRows, ii) = xArr1(i, ii)
            Next
        Else
            xArr2 = .Item(xArr1(i, 1))
            If UBound(xArr1, 2) < xArr2(1) + t - 1 Then
                ReDim Preserve xArr1(1 To UBound(xArr1, 1), 1 To xArr2(1) + t - 1)
                For ii = 2 To t
                    xArr1(1, xArr2(1) + ii - 1) = xArr1(1, ii)
                Next
            End If
            For ii = 2 To t
                xArr1(xArr2(0), xArr2(1) + ii - 1) = xArr1(i, ii)
            Next
            xArr2(1) = xArr2(1) + t - 1: .Item(xArr1(i, 1)) = xArr2
        End If
    Next
End With
OutRng.Resize(xRows, UBound(xArr1, 2)).Value = xArr1
End Sub

3. Ardından bu kodu çalıştırmak için F5 tuşuna basın, açılan diyalog kutusunda yinelenen satırları birden fazla sütuna dönüştürmek istediğiniz veri aralığını seçin, aşağıdaki ekran görüntüsüne bakın:

vba code to select the data range

4. Tamam'ı tıklayın ve sonuçları koymak istediğiniz hücreyi aşağıdaki diyalog kutusunda seçin, aşağıdaki ekran görüntüsüne bakın:

vba code to select one cell to put the result

5. Ve ardından Tamam düğmesine tıklayın, seçtiğiniz veriler aşağıdaki şekilde dönüştürülmüştür:

the selected data is converted to columns

a screenshot of kutools for excel ai

Kutools AI ile Excel Sihirini Keşfedin

  • Akıllı Yürütme: Hücre işlemleri gerçekleştirin, verileri analiz edin ve grafikler oluşturun—tümü basit komutlarla sürülür.
  • Özel Formüller: İş akışlarınızı hızlandırmak için özel formüller oluşturun.
  • VBA Kodlama: VBA kodunu kolayca yazın ve uygulayın.
  • Formül Yorumlama: Karmaşık formülleri kolayca anlayın.
  • Metin Çevirisi: Elektronik tablolarınız içindeki dil engellerini aşın.
Yapay zeka destekli araçlarla Excel yeteneklerinizi geliştirin. Şimdi İndirin ve daha önce hiç olmadığı gibi bir verimlilik deneyimi yaşayın!

İlgili makaleler:

Sütunları ve satırları tek bir satıra nasıl aktarabilir / dönüştürebilirsiniz?

Sütunları ve satırları tek bir sütuna nasıl aktarabilir / dönüştürebilirsiniz?

Excel'de tek bir sütunu birden fazla sütuna nasıl aktarabilir / dönüştürebilirsiniz?

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veri analizinde devrim yaratın: Akıllı Yürütme   |  Kod Oluştur  |  Özel Formüller Oluştur  |  Verileri Analiz Et ve Grafikler Oluştur  |  Geliştirilmiş İşlevleri Çağır
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle   |  Boş Satırları Sil   |  Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir   |   Formül Olmadan Yuvarla ...
Süper ARA: Çok Kriterli Düşeyara    Çoklu Değer Düşeyara  |   Çoklu sayfa araması   |   Bulanık Eşleme ....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluştur   |  Bağımlı Açılır Liste   |  Çoklu Seçimli Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştır ...
Öne Çıkan Özellikler: Izgara Odaklama   |  Tasarım Görünümü   |   Gelişmiş formül çubuğu    Çalışma Kitabı & Çalışma Sayfası Yöneticisi   |  Otomatik Metin Kütüphanesi (Auto Text)   |  Tarih Seçici   |  Veri Birleştir   |  Hücreleri Şifrele/Şifre Çöz    Listeye Göre E-posta Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtrele...) ...
En İyi15 Araç Seti12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...)   |   50+ Grafik Türü (Gantt Grafiği, ...)   |   40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...)   |   19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...)   |   12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...)   |   7 Birleştir & Böl Aracı (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...)   |   ... ve daha fazlası

Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar.  En çok ihtiyacınız olan özelliği almak için buraya tıklayın...


Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
  • Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
  • Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!