كيفية إنشاء نطاق مسمى ديناميكي في Excel؟
عادة، النطاقات المسماة مفيدة جدًا لمستخدمي Excel ، يمكنك تحديد سلسلة من القيم في عمود ، وتسمية هذا العمود ، وبعد ذلك يمكنك الرجوع إلى هذا النطاق بالاسم بدلاً من مراجع الخلية الخاصة به. ولكن في معظم الأوقات ، تحتاج إلى إضافة بيانات جديدة لتوسيع قيم البيانات الخاصة بالنطاق المشار إليه في المستقبل. في هذه الحالة ، عليك العودة إلى الصيغ > مدير الاسم وأعد تعريف النطاق ليشمل القيمة الجديدة. لتجنب ذلك ، يمكنك إنشاء نطاق ديناميكي مسمى مما يعني أنك لست بحاجة إلى تعديل مراجع الخلايا في كل مرة عند إضافة صف أو عمود جديد إلى القائمة.
قم بإنشاء نطاق ديناميكي مسمى في Excel عن طريق إنشاء جدول
إنشاء نطاق ديناميكي مسمى في Excel مع الوظيفة
قم بإنشاء نطاق ديناميكي مسمى في Excel باستخدام كود VBA
قم بإنشاء نطاق ديناميكي مسمى في Excel عن طريق إنشاء جدول
إذا كنت تستخدم Excel 2007 أو الإصدارات الأحدث ، فإن أسهل طريقة لإنشاء نطاق ديناميكي مسمى هي إنشاء جدول Excel مسمى.
لنفترض أن لديك نطاقًا من البيانات التالية التي تحتاج إلى أن تصبح نطاقًا ديناميكيًا.
1. أولاً ، سأحدد أسماء النطاق لهذا النطاق. حدد النطاق A1: A6 وأدخل الاسم التاريخ في اسم صندوق، ثم اضغط أدخل مفتاح. لتعريف اسم النطاق B1: B6 مثل Saleprice بنفس الطريقة. في نفس الوقت ، أقوم بإنشاء صيغة = sum (Saleprice) في خلية فارغة ، انظر لقطة الشاشة:
2. حدد النطاق وانقر إدراج > طاولة، انظر لقطة الشاشة:
3. في اصنع جدول مربع موجه ، تحقق الجدول يحتوي على رؤوس (إذا كان النطاق لا يحتوي على رؤوس ، فقم بإلغاء تحديده) ، انقر فوق OK زر ، وتم تحويل بيانات النطاق إلى جدول. انظر لقطات الشاشة:
4. وعند إدخال قيم جديدة بعد البيانات ، سيتم ضبط النطاق المسمى تلقائيًا كما سيتم تغيير الصيغة التي تم إنشاؤها أيضًا. انظر لقطات الشاشة التالية:
الملاحظات:
1. يجب أن تكون بيانات الإدخال الجديدة بجوار البيانات المذكورة أعلاه ، وهذا يعني عدم وجود صفوف أو أعمدة فارغة بين البيانات الجديدة والبيانات الموجودة.
2. في الجدول ، يمكنك إدراج البيانات بين القيم الموجودة.
إنشاء نطاق ديناميكي مسمى في Excel مع الوظيفة
في Excel 2003 أو إصدار سابق ، لن تكون الطريقة الأولى متاحة ، لذلك إليك طريقة أخرى. الأتى عوض( ) وظيفة يمكن أن تقدم لك هذه الخدمة ، ولكنها مزعجة إلى حد ما. لنفترض أن لدي مجموعة من البيانات التي تحتوي على أسماء النطاقات التي حددتها ، على سبيل المثال ، أكسنومك: أكسنومك اسم النطاق هو التاريخو B1: B6 اسم النطاق هو سعر البيع، في الوقت نفسه ، أقوم بإنشاء صيغة لـ سعر البيع. انظر لقطة الشاشة:
يمكنك تغيير أسماء النطاقات إلى أسماء نطاقات ديناميكية من خلال الخطوات التالية:
1. اذهب للنقر الصيغ > مدير الاسم، انظر لقطة الشاشة:
2. في مدير الاسم مربع الحوار ، حدد العنصر الذي تريد استخدامه ، وانقر فوق تعديل .
3. في خرجت تعديل الاسم الحوار ، أدخل هذه الصيغة = OFFSET (Sheet1! $ A $ 1، 0، 0، COUNTA ($ A: $ A)، 1) في يعود الى مربع النص ، انظر لقطة الشاشة:
4. ثم اضغط OK، ثم كرر الخطوتين 2 و 3 لنسخ هذه الصيغة = OFFSET (Sheet1! $ B $ 1، 0، 0، COUNTA ($ B: $ B)، 1) في يعود الى مربع نص لـ سعر البيع اسم النطاق.
5. وتم إنشاء النطاقات الديناميكية المسماة. عند إدخال قيم جديدة بعد البيانات ، سيتم ضبط النطاق المسمى تلقائيًا كما سيتم تغيير الصيغة التي تم إنشاؤها أيضًا. انظر لقطات الشاشة:
ملحوظة: إذا كانت هناك خلايا فارغة في منتصف النطاق الخاص بك ، فستكون نتيجة الصيغة خاطئة. هذا لأنه لا يتم حساب الخلايا غير الفارغة ، لذلك سيكون النطاق الخاص بك أقصر مما ينبغي ، وسيتم ترك الخلايا الأخيرة في النطاق.
نصيحة: شرح هذه الصيغة:
- = OFFSET (المرجع ، الصفوف ، العواميد ، [الارتفاع] ، [العرض])
- = OFFSET (Sheet1! $ A $ 1، 0، 0، COUNTA ($ A: $ A)، 1)
- مرجع يتوافق مع موضع خلية البداية ، في هذا المثال الورقة 1! $ A $ 1;
- صف يشير إلى عدد الصفوف التي ستتحرك لأسفل ، بالنسبة لخلية البداية (أو لأعلى ، إذا كنت تستخدم قيمة سالبة.) ، في هذا المثال ، يشير 0 إلى أن القائمة ستبدأ من الصف الأول لأسفل
- عمود يتوافق مع عدد الأعمدة التي ستنقلها إلى اليمين ، بالنسبة إلى خلية البداية (أو إلى اليسار ، باستخدام قيمة سالبة.) ، في صيغة المثال أعلاه ، يشير 0 إلى توسيع 0 عمودًا إلى اليمين.
- [ارتفاع] يتوافق مع ارتفاع (أو عدد الصفوف) النطاق الذي يبدأ من الموضع المعدل. $ A: $ A ، سيتم حساب جميع العناصر التي تم إدخالها في العمود A.
- [عرض] يتوافق مع عرض (أو عدد الأعمدة) النطاق الذي يبدأ من الموضع المعدل. في الصيغة أعلاه ، ستكون القائمة بعرض عمود واحد.
يمكنك تغيير هذه الحجج حسب حاجتك.
قم بإنشاء نطاق ديناميكي مسمى في Excel باستخدام كود VBA
إذا كان لديك عدة أعمدة ، فيمكنك تكرار وإدخال صيغة فردية لجميع الأعمدة المتبقية ، ولكن ستكون هذه عملية طويلة ومتكررة. لتسهيل الأمور ، يمكنك استخدام رمز لإنشاء النطاق المسمى الديناميكي تلقائيًا.
1. قم بتنشيط ورقة العمل الخاصة بك.
2. اضغط باستمرار على ALT + F11 مفاتيح ، ويفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.
3. انقر إدراج > وحدة، والصق الكود التالي في ملف نافذة الوحدة.
كود Vba: إنشاء نطاق ديناميكي مسمى
Sub CreateNamesxx()
'Update 20131128
Dim wb As Workbook, ws As Worksheet
Dim lrow As Long, lcol As Long, i As Long
Dim myName As String, Start As String
Const Rowno = 1
Const Colno = 1
Const Offset = 1
On Error Resume Next
Set wb = ActiveWorkbook
Set ws = ActiveSheet
lcol = ws.Cells(Rowno, 1).End(xlToRight).Column
lrow = ws.Cells(Rows.Count, Colno).End(xlUp).Row
Start = Cells(Rowno, Colno).Address
wb.Names.Add Name:="lcol", RefersTo:="=COUNTA($" & Rowno & ":$" & Rowno & ")"
wb.Names.Add Name:="lrow", RefersToR1C1:="=COUNTA(C" & Colno & ")"
wb.Names.Add Name:="myData", RefersTo:="=" & Start & ":INDEX($1:$65536," & "lrow," & "Lcol)"
For i = Colno To lcol
myName = Replace(Cells(Rowno, i).Value, " ", "_")
If myName <> "" Then
wb.Names.Add Name:=myName, RefersToR1C1:="=R" & Rowno + Offset & "C" & i & ":INDEX(C" & i & ",lrow)"
End If
Next
End Sub
4. ثم اضغط F5 مفتاح لتشغيل الكود ، وسيتم إنشاء بعض النطاقات المسماة الديناميكية التي تمت تسميتها بقيم الصف الأول ، كما أنها تنشئ نطاقًا ديناميكيًا يسمى بياناتي الذي يغطي البيانات كاملة.
5. عندما تقوم بإدخال قيم جديدة بعد الصفوف أو الأعمدة ، فسيتم توسيع النطاق أيضًا. انظر لقطات الشاشة:
الملاحظات:
1. باستخدام هذا الرمز ، لا يتم عرض أسماء النطاقات في ملف اسم صندوق، لعرض أسماء النطاقات واستخدامها بشكل ملائم ، لقد قمت بتثبيت كوتولس ل إكسيل، بما لديها جزء التنقل، يتم سرد أسماء النطاقات الديناميكية التي تم إنشاؤها.
2. باستخدام هذا الرمز ، يمكن توسيع نطاق البيانات بالكامل عموديًا أو أفقيًا ، ولكن تذكر أنه لا يجب أن يكون هناك صفوف أو أعمدة فارغة بين البيانات عند إدخال قيم جديدة.
3. عند استخدام هذا الرمز ، يجب أن يبدأ نطاق البيانات في الخلية A1.
مقالة ذات صلة:
كيفية تحديث الرسم البياني تلقائيًا بعد إدخال بيانات جديدة في Excel؟
أفضل أدوات إنتاجية المكتب
عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير
- تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
- فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
- يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!