انتقل إلى المحتوى الرئيسي

كيفية تقسيم عمود كل صف آخر في إكسيل؟

doc ينقسم كل صف آخر 1

على سبيل المثال ، لدي قائمة طويلة من البيانات ، والآن ، أريد تقسيم العمود إلى قائمتين بالتساوي حسب كل صف آخر كما هو موضح في لقطة الشاشة التالية. هل هناك أي طرق جيدة للتعامل مع هذه المهمة في Excel؟

قم بتقسيم عمود كل صف آخر باستخدام الصيغ

قم بتقسيم عمود كل صف آخر برمز VBA

قم بتقسيم عمود كل صف آخر باستخدام Kutools for Excel


السهم الأزرق الحق فقاعة قم بتقسيم عمود كل صف آخر باستخدام الصيغ

قد تساعدك الصيغ التالية على تقسيم عمود بسرعة إلى عمودين حسب كل صف آخر ، يرجى القيام بما يلي:

1. أدخل هذه الصيغة في خلية فارغة ، C2 ، على سبيل المثال ، =INDEX($A$2:$A$13,ROWS(C$1:C1)*2-1)، انظر لقطة الشاشة :

doc ينقسم كل صف آخر 2

2. ثم اسحب مقبض التعبئة لأسفل حتى يتم عرض الأخطاء في الخلايا ، انظر الصورة:

doc ينقسم كل صف آخر 3

3. ثم أدخل صيغة أخرى في الخلية D2 ، =INDEX($A$2:$A$13,ROWS(D$1:D1)*2)، واسحب مقبض التعبئة لأسفل إلى الخلايا حتى تظهر قيم الخطأ ، ويتم تقسيم قيم العمود إلى عمودين في كل صف آخر ، انظر الصورة:

doc ينقسم كل صف آخر 4


السهم الأزرق الحق فقاعة قم بتقسيم عمود كل صف آخر برمز VBA

إذا كنت مهتمًا برمز VBA ، فيمكنني هنا التحدث عن رمز خاص بك لحل هذه المشكلة.

1. اضغط باستمرار على ALT + F11 في Excel ، ويفتح ملف ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

2. انقر إدراج > وحدة، والصق الكود التالي في ملف وحدة نافذة او شباك.

كود فبا: قم بتقسيم عمود إلى عمودين كل صف آخر

Sub SplitEveryOther()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
Dim index As Integer
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")
num1 = 1
num2 = 1
For index = 1 To InputRng.Rows.Count
    If index Mod 2 = 1 Then
        OutRng.Cells(num1, 1).Value = InputRng.Cells(index, 1)
        num1 = num1 + 1
    Else
        OutRng.Cells(num2, 2).Value = InputRng.Cells(index, 1)
        num2 = num2 + 1
    End If
Next
End Sub	

3. ثم اضغط F5 مفتاح لتشغيل هذا الرمز ، وسيظهر مربع موجه لتذكيرك بتحديد نطاق البيانات الذي تريد تقسيمه ، انظر لقطة الشاشة:

doc ينقسم كل صف آخر 5

4. وانقر OK، تم وضع مربع موجه آخر للسماح لك بتحديد خلية لوضع النتيجة ، انظر لقطة الشاشة:

doc ينقسم كل صف آخر 6

5. ثم اضغط OK، وتم تقسيم العمود إلى عمودين بواسطة كل صف آخر. انظر لقطة الشاشة:

doc ينقسم كل صف آخر 7


السهم الأزرق الحق فقاعة قم بتقسيم عمود كل صف آخر باستخدام Kutools for Excel

إذا كنت تريد معرفة المزيد من الأشياء الجديدة ، يمكنني أن أوصي بأداة قوية -كوتولس ل إكسيل، بما لديها نطاق التحويل يمكنك تحويل صف أو عمود واحد بسرعة إلى نطاق من الخلايا والعكس صحيح.

كوتولس ل إكسيل : مع أكثر من 300 وظيفة إضافية مفيدة في Excel ، يمكنك تجربتها مجانًا دون قيود في أيام 30

بعد تثبيت كوتولس ل إكسيل، يرجى القيام بما يلي: تحميل مجاني Kutools لبرنامج Excel الآن )

1. حدد بيانات العمود التي تريد تقسيمها إلى عمودين حسب كل صف آخر.

2. ثم اضغط كوتولس > الفترة (من ... إلى) > نطاق التحويل، انظر لقطة الشاشة:

3. في نطاق التحويل مربع الحوار، حدد عمود واحد للنطاق تحت نوع التحويل، ثم اختر قيمة ثابتة وأدخل 2 في المربع في عدد الصفوف لكل سجل القسم ، انظر لقطة الشاشة:

doc ينقسم كل صف آخر 9

4. ثم اضغط Ok ، وسيظهر مربع موجه لتذكيرك بتحديد خلية تريد إخراج النتيجة فيها ، انظر لقطة الشاشة:

doc ينقسم كل صف آخر 10

5. انقر OK، تم تقسيم بيانات القائمة إلى عمودين كل صف آخر.

انقر لمعرفة المزيد حول أداة Transform Range هذه.

تحميل مجاني Kutools لبرنامج Excel الآن

أفضل أدوات إنتاجية المكتب

🤖 مساعد Kutools AI: إحداث ثورة في تحليل البيانات على أساس: التنفيذ الذكي   |  إنشاء التعليمات البرمجية  |  إنشاء صيغ مخصصة  |  تحليل البيانات وإنشاء الرسوم البيانية  |  استدعاء وظائف Kutools...
الميزات الشعبية: البحث عن التكرارات أو تمييزها أو تحديدها   |  حذف الصفوف الفارغة   |  دمج الأعمدة أو الخلايا دون فقدان البيانات   |   جولة بدون صيغة 
سوبر بحث: معايير متعددة VLookup    VLookup ذات القيمة المتعددة  |   VLookup عبر أوراق متعددة   |   بحث غامض ....
قائمة منسدلة متقدمة: إنشاء القائمة المنسدلة بسرعة   |  القائمة المنسدلة التابعة   |  قائمة منسدلة متعددة التحديد ....
مدير العمود: إضافة عدد محدد من الأعمدة  |  نقل الأعمدة  |  تبديل حالة رؤية الأعمدة المخفية  |  مقارنة النطاقات والأعمدة 
الميزات المميزة: التركيز على الشبكة   |  عرض تصميم   |   شريط الفورمولا الكبير    مدير المصنفات والأوراق   |  مكتبة الموارد (النص السيارات)   |  منتقي التاريخ   |  اجمع أوراق العمل   |  تشفير/فك تشفير الخلايا    إرسال رسائل البريد الإلكتروني عن طريق القائمة   |  سوبر تصفية   |   مرشح خاص (تصفية غامق / مائل / يتوسطه خط ...) ...
أفضل 15 مجموعة أدوات12 نص الأدوات (إضافة نص, إزالة الأحرف، ...)   |   +50 رسم الأنواع (مخطط جانت، ...)   |   40+ عملي الصيغ (احسب العمر على أساس تاريخ الميلاد، ...)   |   19 إدخال الأدوات (أدخل رمز الاستجابة السريعة, إدراج صورة من المسار، ...)   |   12 تحويل الأدوات (أرقام إلى كلمات, نتيجة تحويل عملة، ...)   |   7 دمج وتقسيم الأدوات (الجمع بين الصفوف المتقدمة, تقسيم الخلايا، ...)   |   ... و اكثر

عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت.  انقر هنا للحصول على الميزة التي تحتاجها أكثر...

الوصف


يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How to do the opposite of this? Get two column info in one row ?
This comment was minimized by the moderator on the site
Hi, Jas,
To do the opposite of this, to convert two columns data into one single column, you should apply the below VBA code:

Sub ConvertRangeToColumn()
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
Rng.Copy
Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

Please try, hope it can help you!
This comment was minimized by the moderator on the site
As a workaround, you can do the following: Using the above example, 1. Type "=a2" in c2 and "=a3" in d3. 2. Now select c2 through d3. 3. Drag the fill handle parallel to all the data. 4. Now delete cell a2 and shift cells up. 5. Now we need to convert the formula results to the calculated values. That's easily done by copying all the data including the blank rows and pasting the values right on top of itself. 6. Now you can simply sort any of the column alphabetically to bring all the data up.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations