كيفية تطبيق الحدود على الخلية؟

لتطبيق الحدود على خلية باستخدام VBA في Excel، يمكنك استخدام طريقتين مختلفتين. الأول هو خاصية “الحدود” والثاني هو أسلوب “BorderAround”. الفرق الوحيد بين هاتين الطريقتين هو في خاصية “الحدود”، حيث يمكنك حتى تطبيق الحدود على جانب واحد من الخلية ويتم تطبيق الحدود المحيطة بها بالكامل على الخلية.

في هذا البرنامج التعليمي سوف نستكشف كلا الطريقتين ونلقي نظرة على الطرق المختلفة لإضافة الحدود.

خاصية الحدود VBA

  1. أولاً، تحتاج إلى تحديد النطاق أو الخلية التي تريد تطبيق الحدود فيها باستخدام كائن النطاق.
    specify the range or cell
  2. بعد ذلك، اكتب النقطة (.) ثم حدد خاصية “الحدود” من قائمة الخصائص والأساليب.
    type a dot and then select the border
  3. ثم حدد فهرس الحدود من المحتويات المتوفرة. هنا أستخدم “xlEdgeBottom” لتطبيق الحدود على الجزء السفلي من الخلية فقط.
    specify the border index
  4. ومن هناك، حدد نمط الخط باستخدام “LineStyle”. أستخدم “xlContinuonus” كنمط خط.
    specify th line style
 Sub vba_borders() Range("A1") _ .Borders(xlEdgeBottom) _ .LineStyle = XlLineStyle.xlContinuous End Sub

الآن عندما تقوم بتشغيل هذا الكود فإنه سيضيف حدًا إلى أسفل الخلية A1.

وهذا سيضيف الحدود في الأسفل

استخدام ألوان مختلفة مع مؤشر اللون/اللون

تمامًا مثلما تختار عادةً لون الحدود عندما تفعل ذلك يدويًا. في خاصية الحدود، يمكنك أيضًا استخدام فهرس الألوان وخاصية اللون لاستخدام لون آخر غير اللون الافتراضي.

النظر في الكود أدناه.

 With Range("A1").Borders(xlEdgeBottom) .LineStyle = XlLineStyle.xlContinuous .Color = RGB(255, 0, 0) End With

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

باستخدام ألوان مختلفة مع مؤشر اللون

أو إذا كنت تريد استخدام خاصية colorindex، فسيكون الكود هكذا.

 With Range("A1").Borders(xlEdgeBottom) .LineStyle = XlLineStyle.xlContinuous .ColorIndex = 7 End With
خاصية مؤشر اللون

ذات صلة: VBA مع الإعلان

إضافة حد داخل الخلية

إذا كنت تريد تطبيق حد داخل خلية، ففي هذه الحالة تحتاج إلى استخدام “xlDiagonalUp” و”xlDiagonalDown” كـ xlBorderIndex.

 With Range("A1").Borders(xlDiagonalUp) .LineStyle = XlLineStyle.xlDashDotDot .Color = RGB(255, 0, 0) End With With Range("A1").Borders(xlDiagonalDown) .LineStyle = XlLineStyle.xlDashDotDot .Color = RGB(255, 0, 0) End With
إضافة حد داخل الخلية

عند تشغيل الكود أعلاه فإنه يضيف حدًا داخل الخلية لأعلى ولأسفل.

طريقة VBA BorderAround

في خاصية BorderAround الخاصة بـ VBA، لديك 5 وسيطات اختيارية، ولكن يجب تحديد اثنتين منها لتطبيق الحد بشكل صحيح على الخلية.

طريقة vba borderaround

تطبق التعليمة البرمجية التالية الحد حول النطاق A1:A3 عند تشغيل الماكرو.

 Range("A1:A3").BorderAround _ LineStyle:=xlContinuous, _ Weight:=xlThin
تحديد تطبيق الحدود على الخلية بالطريقة الصحيحة

أضف حدًا لكل خلية في النطاق

يتكرر التعليمة البرمجية التالية عبر كافة الخلايا الموجودة في النطاق ويطبق الحد على كل خلية واحدة تلو الأخرى.

 Sub vba_borders() Dim iRange As Range Dim iCells As Range Set iRange = Range("A1:A10") For Each iCells In iRange iCells.BorderAround _ LineStyle:=xlContinuous, _ Weight:=xlThin Next iCells End Sub
أضف حدًا لكل خلية في النطاق

تطبيق الحدود على كافة الخلايا التي تحتوي على نص

يستخدم التعليمة البرمجية التالية FOR LOOP، وUSED RANGE، وIFEMPTY، وIF STATEMENT لتطبيق الحدود على الخلايا التي تحتوي على قيمة فقط.

 Dim iRange As Range Dim iCells As Range Set iRange = ThisWorkbook.ActiveSheet.UsedRange For Each iCells In iRange If Not IsEmpty(iCells) Then iCells.BorderAround _ LineStyle:=xlContinuous, _ Weight:=xlThin End If Next iCells

إزالة الحدود

ما عليك سوى استخدام نمط الخط “xlNone”.

 Range("A1").Borders(xlDiagonalDown).LineStyle = xlNone

وإذا كنت تريد إزالة الحد من كافة الخلايا في ورقة العمل التي تحتوي على قيمة، ففكر في التعليمة البرمجية التالية.

 Dim iRange As Range Dim iCells As Range Set iRange = ThisWorkbook.ActiveSheet.UsedRange For Each iCells In iRange If Not IsEmpty(iCells) Then iCells.Borders(xlDiagonalDown).LineStyle = xlNone End If Next iCells
ما هو فبا

الدروس ذات الصلة

اضف تعليق

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *