آلن پرسید آیا راهی برای شناسایی سریع و آسان سلول ها در ورک بوک ایجاد شده توسط شخص دیگری وجود دارد؟ در واقع راه های مختلفی وجود دارد که می توانید برای شناسایی این سلول ها استفاده کنید.
یکی از روش های شناسایی سلول ها استفاده از قابلیت های جستجوی اکسل است. این مراحل را دنبال کنید:

شکل 1. تب Find از کادر محاوره ای Find and Replace.

شکل 2. تب Alignment از کادر محاوره ای Find Format.
- Ctrl+F را فشار دهید . اکسل تب Find از کادر محاوره ای Find and Replace را نمایش می دهد.
- در صورت لزوم، روی دکمه Options کلیک کنید تا مطمئن شوید که کادر گفتگوی Find and Replace برای نمایش همه گزینه ها باز شده است. (شکل 1 را ببینید.)
- مطمئن شوید که کادر Find What خالی است.
- با نقطه درج در کادر Find What، روی دکمه Format کلیک کنید. اکسل کادر محاوره ای Find Format را نمایش می دهد.
- مطمئن شوید که تب Alignment نمایش داده شده است. (شکل 2 را ببینید.)
- مطمئن شوید که تیک Merge Cells انتخاب شده باشد (باید یک علامت در کادر چک وجود داشته باشد).
- روی OK کلیک کنید تا کادر محاوره ای Find Format بسته شود.
- روی Find All کلیک کنید.
اکسل سلول های ادغام شده را جستجو می کند و در صورت وجود آنها، سلول ها در پایین کادر گفتگوی Find and Replace نمایش داده می شوند. سپس می توانید یکی از محدوده های یافت شده را انتخاب کنید و محدوده مربوطه در کاربرگ انتخاب می شود.
اگر ترجیح می دهید، می توانید یک ماکرو برای پیدا کردن سلول های مختلف ادغام شده در کاربرگ استفاده کنید. ماکرو زیر شاید ساده ترین روش انجام این کار را نشان می دهد:
Sub FindMerged1()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.MergeCells Then
MsgBox c.Address & " is merged"
End If
Next
End Sub
این ماکرو خاص از تمام سلول های کاربرگ عبور می کند (خوب، حداقل آنهایی که در UsedRange هستند) و اگر سلول بخشی از یک سلول ادغام شده باشد، یک کادر پیام نمایش داده می شود. توجه داشته باشید که ویژگی مربوطه که بررسی می شود، ویژگی MergeCells است. اگر سلول با سلول دیگری ادغام شود، روی True تنظیم می شود.
البته، اگر صفحه کار تعداد زیادی سلول داشته باشد، اجرای یک ماکرو مانند این ممکن است زمان زیادی طول بکشد و اگر تعداد زیادی از آن سلول ها ادغام شوند، حتی بیشتر طول می کشد. اگر در هر سلول ادغام شده متوقف نشود و کادر محاوره ای نمایش داده نشود، ماکرو شما سریعتر اجرا می شود. نسخه زیر رویکرد متفاوتی دارد و هر سلول ادغام شده را با رنگ زرد پر می کند:
Sub FindMerged2()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.MergeCells Then
c.Interior.ColorIndex = 36
End If
Next
End Sub
یک تغییر در این رویکرد می تواند ایجاد یک تابع تعریف شده توسط کاربر باشد که در صورت ادغام سلول، به سادگی True یا False را برمی گرداند:
Function FindMerged3(rCell As Range)
FindMerged3 = rCell.MergeCells
End Function
با استفاده از این تابع ساده می توانید از قالب بندی شرطی برای برجسته کردن سلول ها در صورت ادغام استفاده کنید. (اگر تابع True را برمی گرداند، قالب بندی شرطی هر قالبی را که مشخص می کنید در سلول اعمال می شود.)
در نهایت، اگر می خواهید فهرستی از سلول ها در کاربرگ ادغام شده اند، می توانید به سادگی از ماکرو خود بخواهید به جای رنگ آمیزی سلول ها، فهرست را کنار هم قرار دهد:
Sub FindMerged4()
Dim c As Range
Dim sMsg As String
sMsg = ""
For Each c In ActiveSheet.UsedRange
If c.MergeCells Then
If sMsg = "" Then
sMsg = "Merged worksheet cells:" & vbCr
End If
sMsg = sMsg & c.Address & vbCr
End If
Next
If sMsg = "" Then
sMsg = "No merged worksheet cells."
End If
MsgBox sMsg
End Sub
این تغییر یک جعبه پیام واحد را در انتهای ماکرو نشان می دهد که آدرس هر سلول ادغام شده در کاربرگ را نشان می دهد.