اكتشاف الخلايا المدمجة في VBA Excel باستخدام MergeArea

StackOverflow https://stackoverflow.com//questions/22075988

  •  23-12-2019
  •  | 
  •  

سؤال

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

كيف يمكنني استخدام خاصية MergeArea للكشف عن المناطق المدمجة وغير المدمجة؟إذا لم يتم دمج الخلية، فمن المحتمل أن تُرجع نطاقًا فارغًا، ولكن هذا:

"إذا كان النطاق الحالي لا شيء إذن"

لا يعمل على الإطلاق.أيه أفكار؟شكرًا جزيلاً.

هل كانت مفيدة؟

المحلول

هناك العديد من القطع المفيدة من التعليمات البرمجية لهذا.

ضع مؤشرك في خلية مدمجة وطرح هذه الأسئلة في النافذة المعتدية:

هل activeCell خلية مدمجة؟

giveacodicetagpre.

كم من الخلايا دمجها؟

giveacodicetagpre.

كم عدد أعمدة دمجها؟

giveacodicetagpre.

كم يتم دمج عدد الصفوف؟

giveacodicetagpre.

ما هو عنوان النطاق المدمج؟

giveacodicetagpre.

نصائح أخرى

أثناء العمل مع الخلايا المحددة كما هو موضح بواسطةtbur يمكن أن يكون مفيدًا، كما أنه ليس الخيار الوحيد المتاح.

يمكنك استخدام يتراوح() مثل ذلك:

If Worksheets("Sheet1").Range("A1").MergeCells Then
  Do something
Else
  Do something else
End If

أو:

If Worksheets("Sheet1").Range("A1:C1").MergeCells Then
  Do something
Else
  Do something else
End If

بدلا من ذلك، يمكنك استخدام الخلايا ():

If Worksheets("Sheet1").Cells(1, 1).MergeCells Then
  Do something
Else
  Do something else
End If
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top