برایان پرسید که آیا راهی در اکسل برای بزرگنمایی محتویات سلول فعلی وجود دارد؟ او روی یک کاربرگ کار می کند که برای دیدن کل صفحه باید در تنظیم زوم کم (30 درصد یا بیشتر) باشد. با اجرای سناریوهای مختلف، سلول ها بسته به نتیجه، رنگ تغییر می کنند. برایان به راحتی می تواند ببیند که کدام سلول ها را باید بررسی کند، اما به دلیل تنظیم زوم نمی تواند آنها را بخواند. او معمولاً بزرگنمایی را تغییر می دهد، پاسخ را می خواند، و برای اجرای یک سناریوی دیگر کوچک نمایی می کند. اگر تنها سلول فعلی (سلول انتخاب شده) تا حد قابل خواندن بزرگنمایی شود، بسیار ساده تر خواهد بود.
هیچ روش داخلی در اکسل برای انجام این روش انتخابی بزرگنمایی وجود ندارد، اما Magnifier (ابزار سهولت دسترسی ارائه شده در ویندوز) ممکن است همان کاری را انجام دهد که برایان می خواهد. این برنامه ناحیه نزدیک نشانگر ماوس را بزرگ می کند و قسمت دیگری از صفحه را با تصویر بزرگ شده می پوشاند. می توانید با نگه داشتن کلید Windows (چیزی که لوگوی ویندوز روی آن است) و فشار دادن کلید + روی صفحه کلید عددی، ابزار Magnifier را وارد چرخ دنده کنید. صفحه نمایش بزرگ شده است. دوباره کلید ویندوز و سپس کلید Ð (منهای) را فشار دهید و صفحه به حالت عادی باز می گردد. می توانید اطلاعات بیشتری در مورد ذره بین در این WindowsTip بیابید :
https://tips.net/T12562
اگر مقید و مصمم به انجام بزرگنمایی در اکسل هستید، چند راه حل وجود دارد که می توانید امتحان کنید. یکی از این راه حل ها استفاده از ماکرو است که مقدار سلول فعال را در یک جعبه پیام نمایش می دهد. چنین ماکرو به راحتی به ماژول کاربرگ اضافه می شود:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
MsgBox ActiveCell.Address & ": " & ActiveCell.Value
End Sub
هر بار که سلول دیگری را در کاربرگ انتخاب می کنید، ماکرو کادر پیامی را نشان می دهد که محتویات آن سلول را نشان می دهد. این مشکل را حل می کند، اما بستن مداوم جعبه های پیام هر بار که سلول انتخاب شده را تغییر می دهید، می تواند خسته کننده باشد.
همچنین می توانید یک ماکرو ایجاد کنید که به سادگی اندازه فونت هر سلولی را که در حال حاضر انتخاب شده است تغییر دهد. ماکرو ساده زیر که به ماژول کاربرگ اضافه شده است، به سلول انتخابی فعلی نگاه می کند و اندازه فونت آن را تا 500% افزایش می دهد.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
FontSize = ActiveCell.Font.Size
LargeSize = FontSize * 5
Cells.Font.Size = FontSize
ActiveCell.Font.Size = LargeSize
End Sub
البته کاربرد چنین ماکرویی به نحوه فرمت کردن ارتفاع و عرض سلول انتخاب شده بستگی دارد. اگر ارتفاع و عرض ثابت باشند، این امکان وجود دارد که افزایش اندازه فونت محتویات سلول را غیرقابل خواندن کند. اگر ارتفاع و عرض پویا هستند، پس محتویات هنوز باید کاملاً خوانا باشند.
روش دیگر این است که تصویر بزرگنمایی شده خود را از هر سلول همانطور که انتخاب شده است ایجاد کنید:
Private Sub ZoomCell(ZoomIn As Single)
Dim s As Range
Set s = Selection
Get rid of any existing zoom pictures
For Each p In ActiveSheet.Pictures
If p.Name = "ZoomCell" Then
p.Delete
Exit For
End If
Next
Create a zoom picture
s.CopyPicture Appearance:=xlScreen, _
Format:=xlPicture
ActiveSheet.Pictures.Paste.Select
With Selection
.Name = "ZoomCell"
With .ShapeRange
.ScaleWidth ZoomIn, msoFalse, _
msoScaleFromTopLeft
.ScaleHeight ZoomIn, msoFalse, _
msoScaleFromTopLeft
With .Fill
.ForeColor.SchemeColor = 9
.Visible = msoTrue
.Solid
End With
End With
End With
s.Select
Set s = Nothing
End Sub
برای استفاده از ماکرو، باید هر بار که انتخاب در کاربرگ تغییر می کند، آن را فراخوانی کنید. برای انجام این کار، یک ماکرو کوچک به ماژول کاربرگ اضافه می کنید:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ZoomCell 6
End Sub
در این حالت، هر بار که انتخاب سلول تغییر می کند، ماکرو ZoomCell برای ایجاد تصویری شش برابر اندازه اصلی اجرا می شود. اگر تغییر خودکار تصویر هر بار که سلول دیگری را انتخاب می کنید آزاردهنده است، می توانید ماکرو ماشه را در ماژول کاربرگ حذف کنید و ماکرو ZoomCell را طوری تغییر دهید که هر زمان که آن را شروع می کنید اجرا شود، شاید با یک کلید میانبر که شما راه اندازی کردید
Sub ZoomCell()
Dim s As Range
Dim ZoomIn As Single
Set s = Selection
ZoomIn = 6
Get rid of any existing zoom pictures
For Each p In ActiveSheet.Pictures
If p.Name = "ZoomCell" Then
p.Delete
Exit For
End If
Next
Create a zoom picture
s.CopyPicture Appearance:=xlScreen, _
Format:=xlPicture
ActiveSheet.Pictures.Paste.Select
With Selection
.Name = "ZoomCell"
With .ShapeRange
.ScaleWidth ZoomIn, msoFalse, _
msoScaleFromTopLeft
.ScaleHeight ZoomIn, msoFalse, _
msoScaleFromTopLeft
With .Fill
.ForeColor.SchemeColor = 9
.Visible = msoTrue
.Solid
End With
End With
End With
s.Select
Set s = Nothing
End Sub