هنگامی که یک نمودار اکسل ایجاد می کنید، به عنوان یک شی برای قرار دادن در یک کاربرگ، شی نمودار به طور خودکار به اندازه از پیش تعیین شده ای که اکسل انتخاب می کند، اندازه می شود. ممکن است نخواهید که شی نمودار هر اندازه ای باشد که اکسل تعیین می کند. ممکن است بخواهید که اشیاء نمودار شما همیشه یک اندازه استاندارد باشند، بنابراین آنها همیشه نسبت به کاربرگ های شما یکسان به نظر می رسند.
زمانی که در حال ایجاد نمودار هستید، هیچ راهی برای تعیین اندازه شی نمودار وجود ندارد. با این حال، می توانید اندازه شی نمودار را پس از ایجاد آن تغییر دهید، همانطور که می توانید اندازه سایر عناصر گرافیکی کاربرگ خود را تغییر دهید. شما می توانید یک ماکرو بنویسید تا شی را در اندازه ای خاص ایجاد کنید، اما انجام این کار باعث می شود تا بسیاری از انعطاف پذیری هایی که در ابزارهای ایجاد نمودار اکسل وجود دارد، حذف شود. به عنوان مثال، هنگامی که اندازه شی نمودار ایجاد شده را مشخص می کنید، باید ویژگی های دیگری مانند نوع نمودار را نیز مشخص کنید. انتخاب و انتخاب چنین ویژگی هایی از طریق ابزارهای روی روبان آسان تر از انجام این کار در یک ماکرو است.
با این حال، می توانید به راحتی یک ماکرو ایجاد کنید که اندازه یک شی نمودار موجود را تغییر می دهد. دستورات کلیدی چنین ماکرویی تغییر ویژگی های Width و Height برای شی نمودار است. در VBA این خصوصیات در نقاط مشخص می شوند. بنابراین، اگر میخواهید اندازه شی نمودار را طوری تغییر دهید که ارتفاع آن 4 اینچ باشد، ویژگی Height را روی 288 تنظیم میکنید که تعداد نقاط در 4 اینچ (4 * 72) است.
ماکرو زیر مثالی از یک روش برای گذر از تمام اشیاء نمودار در یک کاربرگ و هم اندازه کردن آنها ارائه می دهد. این ماکرو خاص عرض هر شی نمودار را 4 اینچ و ارتفاع آن را 3 اینچ تعیین می کند.
Sub ResizeCharts()
For j = 1 To ActiveSheet.Shapes.Count
If ActiveSheet.Shapes(j).Type = msoChart Then
ActiveSheet.Shapes(j).Width = 4 * 72
ActiveSheet.Shapes(j).Height = 3 * 72
End If
Next j
End Sub