كيفية تحويل الصفوف المكررة إلى أعمدة في إكسيل؟
لنفترض أن لديك مجموعة من البيانات في Excel ، الآن ، هل ترغب في تبديل الصفوف المكررة إلى أعمدة متعددة كما هو موضح في لقطة الشاشة التالية ، هل لديك أي أفكار جيدة لحل هذه المهمة؟
انقل الصفوف المكررة إلى أعمدة برمز VBA
انقل الصفوف المكررة إلى أعمدة برمز VBA
لسوء الحظ ، لا توجد طريقة مباشرة للتعامل معها في Excel ، ولكن يمكنك إنشاء رمز VBA لحلها ، يرجى القيام بما يلي:
1. اضغط باستمرار ALT + F11 مفاتيح لفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.
2. انقر إدراج > وحدة، والصق الكود التالي في ملف نافذة الوحدة.
كود فبا: قم بنقل الصفوف المكررة إلى أعمدة متعددة
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. ثم اضغط F5 مفتاح لتشغيل هذا الرمز ، حدد نطاق البيانات الذي تريد تحويل الصفوف المكررة إلى أعمدة متعددة في مربع الحوار المنبثق ، انظر لقطة الشاشة:
4. انقر OK، وحدد خلية واحدة حيث تريد وضع النتيجة في مربع الحوار التالي ، انظر لقطة الشاشة:
5. ثم انقر فوق OK زر ، تم تحويل البيانات المحددة الخاصة بك إلى ما يلي:
مقالات ذات صلة:
كيفية تبديل / تحويل الأعمدة والصفوف إلى صف واحد؟
كيفية تبديل / تحويل الأعمدة والصفوف إلى عمود واحد؟
كيفية تحويل / تحويل عمود واحد إلى أعمدة متعددة في إكسيل؟
أفضل أدوات إنتاجية المكتب
عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير
- تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
- فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
- يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!