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

كيفية إدراج صفوف فارغة عندما تتغير القيمة في إكسيل؟

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

أدخل صفوفًا فارغة عندما تتغير القيمة باستخدام دالة Subtotal

قم بإدراج صفوف فارغة عندما تتغير القيمة مع الأعمدة المساعدة

قم بإدراج صفوف فارغة عندما تتغير القيمة برمز VBA

أدخل عددًا محددًا من الصفوف الفارغة عندما تتغير القيمة بميزة قوية


أدخل صفوفًا فارغة عندما تتغير القيمة باستخدام دالة Subtotal

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

1. حدد نطاق البيانات الذي تريد استخدامه.

2. انقر البيانات > المجموع الفرعي لفتح المجموع الفرعي مربع الحوار وفي المجموع الفرعي الحوار ، يرجى القيام بالخيارات التالية:

1: حدد اسم العمود الذي تريد إدراج صفوف فارغة بناءً على الوقت الذي تتغير فيه القيمة في كل تغيير في قسم؛
2: أختر العد التنازلي من استخدام وظيفة قائمة منسدلة؛
3: حدد اسم العمود الذي تريد إدراج الإجمالي الفرعي فيه في أضف المجموع الفرعي إلى قائمة

3. ثم اضغط OK، تم إدراج خطوط الإجمالي الفرعي بين المنتجات المختلفة ، ويتم عرض رموز المخطط التفصيلي على يسار الجدول ، انظر الصورة:

4. ثم انقر فوق الرقم 2 في الجزء العلوي من رمز المخطط التفصيلي لعرض خطوط الإجمالي الفرعي فقط.

5. ثم حدد بيانات النطاق الإجمالي الفرعي ، واضغط على Alt + ؛ مفاتيح الاختصار لتحديد الصفوف المرئية فقط ، انظر الصورة:

6. بعد تحديد الصفوف المرئية فقط ، اضغط على حذف على لوحة المفاتيح ، وتمت إزالة جميع صفوف الإجمالي الفرعي.

7. ثم انقر فوق أي خلية أخرى ، ثم ارجع البيانات > فك التجميع > مسح المخطط التفصيلي لإزالة الخطوط العريضة ، انظر الصورة:

8. تم مسح رموز المخطط التفصيلي مرة واحدة ، ويمكنك رؤية صفوف فارغة تم إدراجها بين البيانات عندما تتغير القيمة ، انظر الصورة:

9. أخيرًا ، يمكنك حذف العمود A حسب حاجتك.


قم بإدراج فاصل صفحة أو صفوف فارغة أو حد سفلي أو لون تعبئة عندما تتغير القيمة بسرعة

إذا كان لديك كوتولس ل إكسيل's ميّز الاختلافات الميزة ، يمكنك إدراج فاصل صفحة أو صفوف فارغة أو حد سفلي أو ملء اللون بسرعة عندما تتغير القيمة حسب حاجتك. انظر أدناه التجريبي.         انقر لتنزيل Kutools for Excel!


قم بإدراج صفوف فارغة عندما تتغير القيمة مع الأعمدة المساعدة

باستخدام أعمدة المساعد ، يمكنك إدراج الصيغة أولاً ، ثم تطبيق بحث واستبدال الوظيفة ، أخيرًا ، أدخل الصفوف الفارغة بين القيم المتغيرة. الرجاء القيام بما يلي:

1. في خلية فارغة C3 ، الرجاء إدخال هذه الصيغة = A3 = A2، وفي الخلية D4 أدخل هذه الصيغة = A4 = A3، انظر لقطة الشاشة:

2. ثم حدد C3: D4 ، واسحب مقبض التعبئة إلى النطاق الذي تريد تطبيق صيغ أطروحاته ، وستحصل على صواب or خطأ في الخلايا ، انظر لقطة الشاشة:

3. ثم اضغط CTRL + F مفاتيح لفتح بحث واستبدال الحوار ، في مربع الحوار المنبثق ، أدخل خاطئة في تجد ما مربع نص أسفل علامة التبويب وانقر فوق مزيد من الخيارات لتوسيع هذا الحوار واختيار القيم من إنظر في القائمة المنسدلة ، انظر لقطة الشاشة:

4. انقر جد كل زر ، ثم اضغط CTRL + A لتحديد جميع نتائج البحث ، تم تحديد جميع الخلايا FALSE مرة واحدة ، انظر الصورة:

6. أقفل ال بحث واستبدال الحوار ، الخطوة التالية ، يمكنك إدراج صفوف فارغة بالنقر فوق الرئيسية > إدراج > إدراج صفوف الورقة، وتم إدراج صفوف فارغة في البيانات عندما تتغير القيمة بناءً على العمود A ، انظر لقطات الشاشة:

7. أخيرًا ، يمكنك حذف العمود المساعد C و D حسب حاجتك.


قم بإدراج صفوف فارغة عندما تتغير القيمة برمز VBA

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

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

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

كود فبا: أدخل صفوف فارغة عندما تتغير القيمة

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

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

4. ثم انقر فوق OK، تم إدراج الصفوف الفارغة بين البيانات عندما تتغير القيمة بناءً على العمود A.


أدخل عددًا محددًا من الصفوف الفارغة عندما تتغير القيمة بميزة قوية

إذا جربت الطرق المزعجة المذكورة أعلاه ، فسوف أقدم هنا أداة مفيدة ، كوتولس ل إكسيل's ميّز الاختلافات يمكن أن تساعدك على إدراج فاصل صفحة أو صفوف فارغة أو حد سفلي أو تعبئة لون عندما تتغير قيمة الخلية بسرعة وسهولة.

نصيحة:لتطبيق هذا ميّز الاختلافات الميزة ، أولاً ، يجب عليك تنزيل ملف كوتولس ل إكسيل، ثم قم بتطبيق الميزة بسرعة وسهولة.

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

1. انقر كوتولس > شكل > ميّز الاختلافات، انظر لقطة الشاشة:

2. في التمييز بين الاختلافات حسب العمود الرئيسي مربع الحوار ، يرجى القيام بالعمليات التالية:

  • حدد نطاق البيانات الذي تريد استخدامه ، ثم اختر عمود المفتاح الذي تريد إدراج صفوف فارغة بناءً عليه ؛
  • ثم تحقق صف فارغ الخيار من مزيد من الخيارات ، وأدخل عدد الصفوف الفارغة التي تريد إدراجها.

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

انقر لتنزيل Kutools for Excel والتجربة المجانية الآن!

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

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

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

علامة تبويب kte 201905


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

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
Comments (16)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, Hassan,

This vba is amazing, whereas I need one more alternate code for insert single blank row after changes in sequencing numbers. Example:- In column having number series like 1, 2, 3, 5, 6, 9 & etc...
Need to add single blank row between 3 & 5 as well as 6 & 9.
Please can you with this.
This comment was minimized by the moderator on the site
Can the VBA method be adapted to ignore blank cells? I have a file which I need to insert rows in based on two different columns but when I run the macro on the second column I end up with three blank lines where the first macro run inserted rows.
Or can it run on two columns at the same time?
This comment was minimized by the moderator on the site
Hello,
Is very usefull in case i need to insert 1 row, but if i need to insert 145 rows in every time the data change in spwcific column, how can i do it??
This comment was minimized by the moderator on the site
Hi, Hassan,
To insert multiple blank rows when value changes in a specific column, you should apply the following VBA code:

Note: In the below code, you should change the number 99 to your need, for example, when you insert 145 blank rows, you should change the number 99 to 144. Please try it, hope it can help you!

Sub InsertRowsAtValueChange()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
Range(WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Insert
End If
Next
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Very helpful. The code that skyyang shows above worked perfectly. Just make sure that the data doesn't already have spaces in it.

I don't understand VBA, but I believe if you wanted to add more rows underneath data that already had the spacing, there should be a way to ignore spaces.

Could a line be added to ignore or skip over blank lines? That might make this code more universal and repeatable if needed. Also a delete function that is similar to this may be useful so undo isn't necessary.
This comment was minimized by the moderator on the site
RE: insert blank rows when value changes with vba code
Is there a way that I can save the Range & not have to pick it every time I run it?
This comment was minimized by the moderator on the site
The VBA code worked 1st time and did exactly what I was trying to do. Thank you so much!
This comment was minimized by the moderator on the site
I've been using my own solution for some time.
1. Insert a helper column into Column A
2. In A2, type "if(B2=B1,A1,A1+1)"
3. Copy that formula down to the last row
4. Copy all the populated cells in column A and Paste Special (Values) over them
5. Copy all the cells again and paste them into column A in the first unpopulated cell (e.g. if you have 104 rows of data plus a header row you would paste into cell A106)
6. Click on Data and Remove Duplicates (only on the cells you just pasted in Step 5; not on all rows)
7. Sort all of Column A
8. Delete Column A

Seems like a lot of steps but only takes a few seconds.
This comment was minimized by the moderator on the site
[quote]Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.By Hudson[/quote] Please let me know how to insert more than 1 row.
This comment was minimized by the moderator on the site
Hi there, These are almost useful! The first method doesn't work for me because when I follow the steps explicitly, the the data that I delete in the subtotal panes deletes the entire columns that I've sorted. In the second method when I get to the step where I insert sheet rows, the rows are inserted ABOVE the FALSE cells which breaks up the data, but the last selection of every group is then added to the group below. Any advice???
This comment was minimized by the moderator on the site
Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.
This comment was minimized by the moderator on the site
Where in the code would I need to modify to include more than one row, I need to add 10 after each break... Thanks
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations