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

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

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

رقم الوثيقة المفقودة 1 -2 رقم الوثيقة المفقودة 2

أدخل الأرقام المفقودة للتسلسل باستخدام ميزة الفرز وإزالة التكرارات

أدخل الأرقام المفقودة للتسلسل برمز VBA

أدخل صفوفًا فارغة للتسلسل المفقود برمز VBA

أدخل الأرقام المفقودة أو الصفوف الفارغة للتسلسل باستخدام Kutools for Excel


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

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

1. بعد نهاية قائمة التسلسل ، قم بتعبئة أرقام تسلسلية أخرى من 2005023001 إلى 2005023011. انظر لقطة الشاشة:

رقم الوثيقة المفقودة 3

2. ثم حدد نطاق رقمي التسلسل وانقر البيانات > ترتيب من الألف إلى الياء، انظر لقطة الشاشة:

رقم الوثيقة المفقودة 4

3. وقد تم فرز البيانات المحددة على أنها لقطة شاشة التالية:

رقم الوثيقة المفقودة 5

4. ثم تحتاج إلى إزالة التكرارات عن طريق النقر البيانات > إزالة التكرارات، وبرزت إزالة التكرارات مربع الحوار، والتحقق من عمود الاسم الذي تريد إزالة التكرارات منه ، انظر لقطات الشاشة:

رقم الوثيقة المفقودة 6 -2 رقم الوثيقة المفقودة 7

5. ثم اضغط OK، التكرارات في العمود أ تم حذفه ، وتم إدراج الأرقام المفقودة في قائمة التسلسل ، انظر الصورة:

رقم الوثيقة المفقودة 8


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

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

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

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

فبا: أدخل الأرقام المفقودة للتسلسل

Sub InsertValueBetween()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
'On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Value
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
interval = num2 - num1
ReDim outArr(1 To interval + 1, 1 To 2)
For Each Rng In WorkRng
    dic(Rng.Value) = Rng.Offset(0, 1).Value
Next
For i = 0 To interval
    outArr(i + 1, 1) = i + num1
    If dic.Exists(i + num1) Then
        outArr(i + 1, 2) = dic(i + num1)
    Else
        outArr(i + 1, 2) = ""
    End If
Next
With WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
    .Value = outArr
    .Select
End With
End Sub

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

رقم الوثيقة المفقودة 9

4. ثم انقر فوق OK، تم إدراج الأرقام المفقودة في قائمة التسلسل. انظر لقطات الشاشة:

رقم الوثيقة المفقودة 1 -2 رقم الوثيقة المفقودة 2

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

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

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

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

فبا: إدراج صفوف فارغة للتسلسل المفقود

Sub InsertNullBetween()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
'On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Value
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
interval = num2 - num1
ReDim outArr(1 To interval + 1, 1 To 2)
For Each Rng In WorkRng
    dic(Rng.Value) = Rng.Offset(0, 1).Value
Next
For i = 0 To interval
    If dic.Exists(i + num1) Then
        outArr(i + 1, 1) = i + num1
        outArr(i + 1, 2) = dic(i + num1)
    Else
        outArr(i + 1, 1) = ""
        outArr(i + 1, 2) = ""
    End If
Next
With WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
    .Value = outArr
    .Select
End With
End Sub

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

رقم الوثيقة المفقودة 9

4. ثم انقر فوق OK، تم إدراج الصفوف الفارغة لقائمة التسلسل المفقودة. انظر لقطات الشاشة:

رقم الوثيقة المفقودة 1 -2 رقم الوثيقة المفقودة 10

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

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

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

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

1. حدد تسلسل البيانات الذي تريد إدخال الأرقام المفقودة.

2. انقر كوتولس > إدراج > البحث عن رقم التسلسل المفقود، انظر لقطة الشاشة:

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

رقم الوثيقة المفقودة 10

4. ثم انقر فوق OK زر ، وتم إدخال أرقام التسلسل المفقودة أو الصفوف الفارغة في البيانات ، انظر لقطات الشاشة:

رقم الوثيقة المفقودة 10 2 رقم الوثيقة المفقودة 10 2 رقم الوثيقة المفقودة 10

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


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

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

مقالة ذات صلة:

كيفية تحديد تسلسل الأرقام المفقودة في 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 (12)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have used the code for "VBA: insert blank rows for missing sequence" as listed above and works great - but i need it to insert rows across the all columns it only adds rows to the first 2 columns of my selection - not my entire table.
This comment was minimized by the moderator on the site
Hello, Melanie,

To solve your problem, maybe the following code can help you: (Note: A indicates the column contains the missing sequence, please change it to your need.)
Sub InsertBlankRowsForMissingSequence()
    Dim i As Long
    On Error Resume Next
    Application.ScreenUpdating = False
    For i = Cells(Rows.Count, "A").End(xlUp).Row To 2 Step -1
        If IsNumeric(Cells(i, "A").Value) And IsNumeric(Cells(i - 1, "A").Value) And Cells(i, "A").Value <> "" And Cells(i - 1, "A").Value <> "" Then
            If Cells(i, "A").Value - Cells(i - 1, "A").Value > 1 Then
                Debug.Print Cells(i, "A").Value - Cells(i - 1, "A").Value - 1
                Rows(i).Resize(Cells(i, "A").Value - Cells(i - 1, "A").Value - 1).Insert
            End If
        End If
    Next i
    Application.ScreenUpdating = True
End Sub

Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
I am trying to use the VBA for sequential numbers. I have several columns next to the numbers of which numbers too. I.e.
1. HL Meter 34
2. HL Watermeter 40
4. HL CO2meter 24

When I use the code it works for the first 3 columns but it gets mixed up if I include the 4th column since it includes numbers too.
How can I change the code to make sure the numbers in column 4 stay the same?
This comment was minimized by the moderator on the site
Thank you amazing
This comment was minimized by the moderator on the site
What if i want to select 6 columns and then check 1st column for dates and if dates are missing add a row(blank cells) for all 6 columns
This comment was minimized by the moderator on the site
I want to use "Inserting missing sequence Number" feature but it's not supporting for digits more than 12 ? there are many sets in which I want to insert the sequence between (it's a alpha-numeric digit) can you help
This comment was minimized by the moderator on the site
Hi, I want to use "Inserting Missing Sequence Number", but it's not supporting if the no. of digits are more than 12 can you help ?
This comment was minimized by the moderator on the site
What if i want to select 6 columns and then check 1st column for dates and if dates are missing add a row(blank cells) for all 6 columns
This comment was minimized by the moderator on the site
Thank you very much. How do i change the script if the increments is only 0.02 and not 1 This is for the script InsertNullBetween()
This comment was minimized by the moderator on the site
this worked and was very easy to complete the task. Thank you.
This comment was minimized by the moderator on the site
Thanks ! Great script ! How i can modify this script if i say we need to process not only ID column + NAME column, but ID column + NAME column + NEW column ? How i can add new columns in this script?
This comment was minimized by the moderator on the site
The following is the modified macro to include an added column - Another important point is that when prompted to select the range, you should only select the first column - these took me a few hours! hope to save others' time

Sub InsertValueBetween()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Rng As Range
Dim outArr As Variant
Dim dic As Variant
Set dic = CreateObject("Scripting.Dictionary")
Dim dic2 As Variant
Set dic2 = CreateObject("Scripting.Dictionary")

'On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
num1 = WorkRng.Range("A1").Value
num2 = WorkRng.Range("A" & WorkRng.Rows.Count).Value
interval = num2 - num1
ReDim outArr(1 To interval + 1, 1 To 3)
For Each Rng In WorkRng
dic(Rng.Value) = Rng.Offset(0, 1).Value
dic2(Rng.Value) = Rng.Offset(0, 2).Value
Next
For i = 0 To interval
outArr(i + 1, 1) = i + num1
If dic.Exists(i + num1) Then
outArr(i + 1, 2) = dic(i + num1)
outArr(i + 1, 3) = dic2(i + num1)
Else
outArr(i + 1, 2) = ""
outArr(i + 1, 3) = ""

End If
Next
With WorkRng.Range("A1").Resize(UBound(outArr, 1), UBound(outArr, 2))
.Value = outArr
.Select
End With
End Sub
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations