ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
37 visibility
موضوع: آفیس توسط:

ماریوس دارای یک کتاب کار است که ممکن است توسط کتابهای دیگر به آن ارجاع داده شود (به آن پیوند داده شود). او می‌خواهد این کتاب کار را حذف کند، اما اگر به دیگران پیوند داده شده باشد، نمی‌تواند. مشکل این است که او نمی داند چگونه بفهمد که آیا این کتاب کار توسط کتاب های دیگر ارجاع داده شده است یا خیر.

اکسل پیوندهای خروجی را برای یک کتاب کار ردیابی می کند (فقط ویرایش پیوندها را از زبانه Data روبان انتخاب کنید تا ببینید چه پیوندهایی در کتاب کار فعلی وجود دارد)، اما برای اکثر نسخه های برنامه، پیوندهای ورودی را پیگیری نمی کند. تنها نسخه‌هایی که به شما امکان می‌دهند پیوندهای ورودی را ردیابی کنید، برخی از نسخه‌های سازمانی Excel هستند که در این سایت مایکروسافت توضیح داده شده است:

https://support.microsoft.com/en-us/office/see-links-between-workbooks-4e12fb30-afb7-4588-89ce-df3ebb39e744

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

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

Sub FindWbkReferences()
    Dim folderp As String
    Dim fname As String
    Dim sMsg As String
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim cel As Range

    folderp = "C:DocumentsExcel"
    fname = Dir(folderp & "*.xlsx")
    sMsg = ""

    Do While fname <> ""
        Set wb = Workbooks.Open(folderp & fname) Open workbook
        For Each ws In wb.Worksheets    Check each worksheet
             Loop through all cells in the worksheet
            For Each cel In ws.UsedRange.Cells
                 Check if the cell contains a formula referencing
                 the specified file
                If InStr(cel.Formula, "WbkToDelete") > 0 Then
                    Save location of reference
                    sMsg = sMsg & "Workbook: " & "" & wb.Name & ""
                    sMsg = sMsg & " contains reference to this workbook in "
                    sMsg = sMsg & " worksheet: " & ws.Name & ", "
                    sMsg = sMsg & " cell: " & cel.Address & vbCr
                End If
            Next cel
        Next ws
        wb.Save
        wb.Close
        fname = Dir()
    Loop
    If sMsg = "" Then sMsg = "No inbound references located"
    MsgBox sMsg
End Sub

ماکرو هر فرمول را در هر سلول استفاده شده از هر کاربرگ هر کتاب کار در یک پوشه مشخص بررسی می کند. پوشه ای که باید بررسی شود در متغیر folderp مشخص شده است، و توجه داشته باشید که کتاب های کاری از نوع خاصی را نیز مشخص می کند. (در این مورد، کتابهای کار XLSX هستند.)

این فرآیند بسته به تعداد پوشه‌های موجود، ممکن است کمی طول بکشد. به علاوه، به سرعت آشکار می شود که این یک رویکرد بسیار قوی نیست. مشکل این است که ممکن است لازم باشد کتاب‌های کار را در چندین پوشه بررسی کنید، یا ممکن است پیوندهایی از اشیاء غیر از فرمول‌ها یا حتی از ماکروها وجود داشته باشد. یا ممکن است پیوندهای ورودی از برنامه های دیگر در مجموعه آفیس مانند Word یا PowerPoint وجود داشته باشد.

آیا می توانید ماکرو خود را برای بررسی هر منبع احتمالی پیوند ورودی تنظیم کنید؟ قابل تصور است که می‌توانستید، اما به سرعت به کاری سخت تبدیل می‌شد که باز کردن و بررسی دستی هر منبع احتمالی.

در صورت تمایل می توانید یک روش نیمه دستی را برای جستجوی لینک های ورودی امتحان کنید. بیایید بگوییم که می خواهید پیوندهای MyBook.xlsx را بررسی کنید. اکسل را ببندید و سپس پنجره Windows Explorer را باز کنید. در کادر جستجو (گوشه سمت راست بالا)، نام کتاب کار (MyBook.xlsx) را وارد کنید و اجازه دهید ویندوز جستجوی خود را انجام دهد. از آنجایی که ویندوز درون هر فایل متن شما را جستجو می‌کند، به زودی فهرستی از فایل‌های حاوی "MyBook.xlsx" را خواهید دید.

با این حال، شاید بهترین روش این باشد که به سادگی نام کتاب کاری را که قصد حذف آن را دارید تغییر دهید. این باعث شکسته شدن پیوندهای ورودی می شود زیرا هدف پیوند دیگر وجود ندارد - شما نام آن را تغییر دادید. سپس می توانید در چند هفته یا چند ماه آینده به استفاده از سیستم خود به طور معمول ادامه دهید. اگر هیچ اعلانی از پیوندهای خراب دریافت نکردید، می توانید با خیال راحت کتاب کار را حذف کنید. یک تغییر در این مورد این است که به جای تغییر نام کتاب کار، آن را جابجا کنید. به سادگی آن را به یک دستگاه خارجی مانند درایو فلش منتقل کنید و سپس به کار خود ادامه دهید. اگر در ادامه مسیر کشف کردید که هنوز به آن نیاز دارید، همیشه می توانید آن را به عقب برگردانید، همانطور که نیازها حکم می کنند.

اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 26 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 34 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 138 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 40 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 36 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

225 نفر آنلاین
0 عضو و 225 مهمان در سایت حاضرند
بازدید امروز: 22409
بازدید دیروز: 17853
بازدید کل: 20334588
...