گاوین یک کاربرگ بزرگ دارد که با آن کار می کند، و استفاده از ابزار Trace Precedents (در زبانه Formulas روبان) برای فهمیدن اینکه چه اتفاقی در حال رخ دادن است، مفید است. گاوین دوست دارد حتی زمانی که ورک بوک را ذخیره می کند، تنظیمات ابزار "روشن" باشد، اما اکسل به او اجازه این کار را نمی دهد. او فکر می کند آیا راهی وجود دارد که آن را روشن بگذاریم تا موارد سابقه همیشه در ورک بوک مشخص شود.
می توان فکر کرد که وقتی یک ورک بوک را باز می کنید، روشن کردن موارد قبلی، از طریق ماکرو، نسبتاً آسان است. تنها کاری که باید انجام دهید این است که از یک ماکرو مانند زیر استفاده کنید:
Sub ShowTracePrecendents1()
Dim rng As Range
Dim c As Range
With ActiveSheet.UsedRange
Set rng = .Cells.SpecialCells(xlCellTypeFormulas, 23)
End With
Application.ScreenUpdating = False
For Each c In rng
c.ShowPrecedents
Next
End Sub
ماکرو تعیین می کند که کدام سلول ها در کاربرگ حاوی فرمول ها هستند (فقط سلول های حاوی فرمول می توانند دارای سابقه باشند) و سپس از هر یک از آن سلول ها عبور می کند و نمایش نمونه های قبلی را روشن می کند.
البته مشکل این است که این رویکرد دقیقاً همان چیزی را که گاوین می خواست انجام نمی دهد. این احتمال وجود دارد که گاوین، هنگام کار با داده های خود، پیشینه را برای هر سلول روشن نمی کند، بلکه فقط برای برخی از سلول ها. ماکرو نمایش پیشینی را برای تمام سلول های ممکن در کاربرگ روشن می کند. اگر می خواهید فقط پیشینه های برخی سلول ها را نمایش دهید، باید سلول ها را در ماکرو مشخص کنید.
Sub ShowTracePrecendents2()
Dim rng As Range
Dim c As Range
Set rng = Range("G1:G5,G7:G8")
For Each c In rng
c.ShowPrecedents
Next
End Sub
برای استفاده مؤثر از ماکرو، باید خطی را که متغیر rng را تنظیم می کند تغییر دهید تا به سلول هایی اشاره کند که می خواهید پیشینه هایی برای آنها نمایش داده شود.
صرف نظر از اینکه با کدام ماکرو می روید، می توانید یک ماکرو "باز کردن خودکار" ایجاد کنید (همانطور که در سایر ExcelTips توضیح داده شد ) که هر زمان که ورک بوک باز شود به طور خودکار آن را اجرا می کند.