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

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

راه ساده و سنتی برای انجام این کار این است که قبل از اعمال فیلتر، یک فرمول به ستون استفاده نشده اضافه کنید. به عنوان مثال، فرض کنید مقادیری که می خواهید فیلتر کنید در ستون A هستند که از سلول A3 شروع می شود و ستون استفاده نشده شما F است. سپس در سلول F3 باید فرمول زیر را وارد کنید:

=SUBTOTAL(103,$A$3:A3)

این فرمول را به تعداد سلول های لازم کپی کنید. فرمول باید یک تعداد برای هر مورد قابل مشاهده در ستون A نشان دهد. وقتی فیلتر خود را اعمال می کنید، فرمول ها برای نمایش تعداد برای هر ردیف فیلتر شده به روز می شوند.

به همین سادگی، یک اشکال دارد: اگر فیلتر را حذف کنید، فرمول به روز می شود تا ردیف های قابل مشاهده را (دوباره) شماره گذاری کند. با این حال، اگر می‌خواستید اعداد روی سلول‌های مربوط به ردیف‌هایی که قبلاً فیلتر شده‌اند باقی بمانند، روش SUBTOTAL به درستی کار نخواهد کرد.

در این صورت رویکرد متفاوتی لازم است. در این مثال، فرض کنید که ستون استفاده نشده شما G است. و پس از اعمال فیلتر، اولین ردیف قابل مشاهده شما 4 است. بنابراین، شما باید موارد زیر را در سلول G4 وارد کنید:

=MAX($G$1:G3) + 1

توجه داشته باشید که محدوده ارائه شده برای تابع MAX با اولین سلول در ستون شروع می شود (مطمئن شوید که علائم دلار را درج کرده اید) و از طریق ردیف بالای سلولی که در آن فرمول را وارد می کنید امتداد می یابد. این فرمول را در تمام سلول های قابل مشاهده باقیمانده در ستون کپی کنید. شما اکنون یک تعداد متوالی از تمام ردیف های قابل مشاهده دارید. حتی اگر بعداً فیلتر را بردارید، این تعداد باقی می ماند.

تنها زمانی که این رویکرد به هم می‌خورد این است که فیلتر را حذف کنید، مقادیر ستون A را تغییر دهید و فیلتر را دوباره اعمال کنید یا تغییر دهید. این به این دلیل است که این رویکرد پیش‌فرض می‌گیرد که قبل از اضافه کردن فرمول‌ها، ستون G خالی باشد.

شاید قوی ترین رویکرد استفاده از یک کلان برای انجام شمارش باشد. موارد زیر تعداد سطرهایی را که در زمان اجرای ماکرو قابل مشاهده هستند به ستون G اضافه می کند:

Sub NumberVisibleRows()
    Dim J As Long
    Dim r As Range

    J = 0
    For Each r In Selection.Rows
        Cells(r.Row, 7) = ""
        If Not r.Hidden Then
            J = J + 1
            Cells(r.Row, 7) = J
        End If
    Next r
End Sub

برای استفاده از ماکرو، فیلتر خود را اعمال کنید، ردیف‌هایی را که می‌خواهید ارزیابی شوند انتخاب کنید و سپس آن را اجرا کنید. شما می توانید با تغییر 7 در سلول ها (r.Row, 7) - دو نمونه وجود دارد - تغییر دهید که کدام ستون شماره گذاری شده است تا شماره ستون مورد نظر شما را منعکس کند.

اگر ترجیح می‌دهید قبل از اجرای ماکرو سلول‌ها را انتخاب نکنید، می‌توانید از تغییرات زیر استفاده کنید:

Sub NumberVisibleRows2()
    Dim J As Long
    Dim r As Range
    Dim iStart As Long

    iStart = 2

    J = 0
    For Each r In ActiveSheet.UsedRange.Rows
        Cells(r.Row, 7) = ""
        If Not r.Hidden And r.Row >= iStart Then
            J = J + 1
            Cells(r.Row, 7) = J
        End If
    Next r
End Sub

برای اینکه این کار به درستی انجام شود، کافیست متغیر iStart را برابر با شماره ردیفی که می خواهید ماکرو به آن توجه کند، تنظیم کنید. بنابراین، در مثال بالا، ردیف اول نادیده گرفته می‌شود زیرا iStart برابر با 2 است. این به ماکرو اجازه می‌دهد تا هر ردیف سرصفحه‌ای را که ممکن است در داده‌های خود داشته باشید، نادیده بگیرد.

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

پاسخ شما

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

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

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

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 26 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 164 visibility
ارسال شده در 27 تیر 1402 موضوع: آفیس توسط: Admin
0 دوستدار 0 امتیاز منفی
0 پاسخ 57 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 30 visibility
ارسال شده در 27 تیر 1402 موضوع: آفیس توسط: Admin
0 دوستدار 0 امتیاز منفی
0 پاسخ 28 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

238 نفر آنلاین
1 عضو و 237 مهمان در سایت حاضرند
اعضای حاضر در سایت
بازدید امروز: 16202
بازدید دیروز: 17853
بازدید کل: 20328385
...