Yinelenen satırları Excel'deki sütunlara nasıl aktarabilirim?
Excel'de bir dizi veriye sahip olduğunuzu varsayarsak, şimdi, aşağıdaki ekran görüntüsü gibi yinelenen satırları birden çok sütuna dönüştürmek istiyorsunuz, bu görevi çözmek için herhangi bir iyi fikriniz var mı?
Yinelenen satırları VBA kodu ile sütunlara aktarın
Yinelenen satırları VBA kodu ile sütunlara aktarın
Ne yazık ki, bununla Excel'de başa çıkmanın doğrudan bir yolu yoktur, ancak çözmek için bir VBA kodu oluşturabilirsiniz, lütfen aşağıdaki işlemleri gerçekleştirin:
1. basılı tutun ALT + F11 tuşlarını açmak için Uygulamalar için Microsoft Visual Basic penceresi.
2. tıklayın Ekle > modülve aşağıdaki kodu Modül Penceresi.
VBA kodu: Yinelenen satırları birden çok sütuna aktarın
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. Daha sonra tuşuna basın. F5 Bu kodu çalıştırmak için tuşuna basın, yinelenen satırları açılan iletişim kutusunda birden çok sütuna dönüştürmek istediğiniz veri aralığını seçin, ekran görüntüsüne bakın:
4. tıklayın OKve sonucu aşağıdaki iletişim kutusunda koymak istediğiniz bir hücre seçin, ekran görüntüsüne bakın:
5. Ve sonra tıklayın OK düğmesine bastığınızda, seçtiğiniz veriler aşağıdaki şekilde dönüştürüldü:
İlgili Makaleler:
Sütunları ve satırları tek satıra nasıl aktarabilirim / dönüştürebilirim?
Sütunları ve satırları tek sütuna nasıl aktarabilirim / dönüştürebilirim?
Tek bir sütunu Excel'deki birden çok sütuna nasıl aktarabilirim / dönüştürebilirim?
En İyi Ofis Üretkenlik Araçları
Kutools for Excel ile Excel Becerilerinizi Güçlendirin ve Daha Önce Hiç Olmadığı Gibi Verimliliği Deneyimleyin. Kutools for Excel, Üretkenliği Artırmak ve Zamandan Tasarruf Etmek için 300'den Fazla Gelişmiş Özellik Sunar. En Çok İhtiyacınız Olan Özelliği Almak İçin Buraya Tıklayın...
Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir
- Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
- Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
- Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!