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

اریک یک کاربرگ دارد که هر دقیقه مقادیر نمونه کارها را به روز می کند. بگوییم سلول B1 مقدار کل در زمان فعلی است. این مجموع یک بار در دقیقه به روزرسانی می شود، زیرا داده های مبتنی بر آن به روزرسانی می شوند. اریک مایل است سلول B2 حداکثر مقداری را که B1 تاکنون به آن رسیده است نشان دهد. به عبارت دیگر، B2 تنها زمانی تغییر می کند که مقدار B1 از آنچه در حال حاضر در سلول B2 است بیشتر شود.

این را می توان با یک فرمول تکراری ساده در سلول B2 انجام داد، مانند این:

=MAX(B1,B2)

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

image

شکل 1. تب Formulas در کادر محاوره ای Excel Options.

  1. تب File روبان را نمایش دهید و سپس روی گزینه ها کلیک کنید. اکسل کادر محاوره ای Excel Options را نمایش می دهد.
  2. در سمت چپ کادر محاوره ای، فرمول ها را انتخاب کنید. (شکل 1 را ببینید.)
  3. مطمئن شوید که کادر بررسی Enable Iterative Calculation انتخاب شده است.
  4. مقدار Maximum Iterations را روی مقدار کم (مانند 1 یا 2) تنظیم کنید.
  5. مقدار Maximum Change را روی چیزی تنظیم کنید که به اندازه کافی بزرگ باشد تا حداکثر تغییری را که ممکن است بین آنچه در سلول B2 و آنچه در سلول B1 جمع شده است مشاهده کنید، پوشش دهید. (مقدار خوب و مطمئن ممکن است چیزی در حدود 1000 باشد.)
  6. روی OK کلیک کنید.

اگر از اکسل 2007 استفاده می کنید، مراحل کمی متفاوت است—ابزار | را انتخاب کنید گزینه ها | تب Calculation را بزنید و مطمئن شوید که چک باکس Iteration انتخاب شده است.

فرمول به خوبی کار خواهد کرد، مشروط بر اینکه سلول B1 هرگز خطایی را نمایش ندهد. اگر فکر می کنید که در نقطه ای، B1 ​​ممکن است حاوی خطا باشد، می توانید فرمول خود را در سلول B2 کمی تغییر دهید:

=IF(ISERROR(B1),B2,MAX(B1,B2))

نتیجه این است که B2 فقط در صورتی به روز می شود که مقدار B1 خطایی نباشد و بیشتر از مقدار فعلی در B2 باشد.

اگر به دلایلی نمی توانید از محاسبات تکراری استفاده کنید (شاید به دلیل فرمول های دیگر در کاربرگ خود)، ممکن است بخواهید از یک ماکرو برای به روز رسانی سلول B2 استفاده کنید. اگر داده های کاربرگ شما قبلاً از طریق ماکرو به روزرسانی می شوند، می توانید به سادگی ماکرو را تغییر دهید تا کاربرگ را دوباره محاسبه کنید و سپس آنچه در B1 است با B2 مقایسه کنید. اگر B1 بزرگتر باشد، ماکرو می تواند مقدار B2 را به روز کند.

اگر داده های شما توسط ماکرو به روزرسانی نمی شوند، می توانید یک مدیریت رویداد برای انجام به روزرسانی ایجاد کنید. موارد زیر باید در پنجره کد کاربرگ قرار داده شود:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$1" Then
        If Target.Value > Range("B2").Value Then
            Application.EnableEvents = False
            Range("B2").Value = Target.Value
            Application.EnableEvents = True
        End If
    End If
End Sub

هر بار که سلول B1 تغییر می کند، ماکرو B1 را با B2 مقایسه می کند. اگر بزرگتر باشد، رویدادها به طور موقت خاموش می شوند و مقدار B2 به روز می شود.

توجه داشته باشید که اگر سلول B1 به طور صریح تغییر کند (شخصی مقدار جدیدی را در B1 وارد کند) یا به طور ضمنی (مقدار B1 هنگام محاسبه مجدد کاربرگ به روز می شود) این کنترل کننده رویداد فعال می شود. اگر مقدار B1 از طریق ماکرو به روز شود یا به دلیل پیوند به منبعی خارج از کاربرگ به روز شود، راه اندازی نمی شود. در این موارد ممکن است لازم باشد ماکرو مقایسه خود را تغییر دهید تا از طریق تایمر اجرا شود یا شاید به سادگی از فرمول مقایسه دایره ای که قبلا توضیح داده شد استفاده کنید.

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

پاسخ شما

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

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

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

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

608 دیدگاه

9.7k کاربر

106 نفر آنلاین
1 عضو و 105 مهمان در سایت حاضرند
اعضای حاضر در سایت
بازدید امروز: 9877
بازدید دیروز: 19586
بازدید کل: 15302324
...