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

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

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

یک راه آسان برای انجام این کار ایجاد یک ستون کمکی است که بسته به شماره قطعه در ستون A 0 یا 1 را نشان می دهد. برای مثال، فرض کنید می خواهید ستون کمکی خود را در ستون Z قرار دهید. فرمول زیر در سلول Z2:

=IF(A2=A1,Z1,1-Z1)

فرمول پایین ستون Z را برای هر ردیف در جدول داده های خود کپی کنید. پس از اتمام، ستون Z شامل 1 یا 0 خواهد بود که تنها زمانی تغییر می کند که شماره قطعه در ستون A تغییر کند. سپس می توانید از مقدار ستون Z به عنوان یک مقدار کنترل کننده برای قالب بندی شرطی خود استفاده کنید. تنها کاری که باید انجام دهید این است که فرمول را به شکلی تنظیم کنید که اگر ستون Z حاوی 1 باشد، سلول های شما سبز شوند.

باید توجه داشته باشید که وقتی قالب بندی شرطی شما تنظیم شد و به درستی کار کرد، می توانید ستون Z را پنهان کنید تا برای کسی که از جدول داده های شما استفاده می کند حواس پرتی نباشد.

اگر به دلایلی نمی توانید از ستون کمکی استفاده کنید، یک فرمول بسیار جالب وجود دارد که می توانید در خود قالب شرطی استفاده کنید. فقط مطمئن شوید که جدول داده های شما بر اساس ستون A (شماره قطعات) مرتب شده است و سپس تمام سلول های جدول را انتخاب کنید، به استثنای سرفصل های ستون. سپس یک قالب شرطی تعریف کنید که از این فرمول استفاده می کند:

=MOD(SUMPRODUCT(--(($A$1:INDIRECT(ADDRESS(ROW()-1,1,3,1))
=$A$2:INDIRECT(ADDRESS(ROW(),1,3,1)))=FALSE)),2)

به یاد داشته باشید که این یک فرمول واحد است که در قانون قالب بندی شرطی، همه در یک خط وارد شده است. این فرمول فرض می کند که شماره قطعات در ستون A هستند و جدول داده ها در سلول A2 شروع می شود. علاوه بر این، اگر هر ردیفی را در جدول داده ها حذف کنید، می خواهید قالب شرطی را مجدداً در تمام سلول های جدول داده اعمال کنید.

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

Sub ShadeRows()
    Dim ThisOrder As Long
    Dim PrvOrder As Long
    Dim LastRow As Long
    Dim Clr As Integer
    Dim R As Long

    LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row

     Enter desired color codes here
     (24 is Lavender, 35 is Light Green)
    RwColor = Array(24, 35)

    Clr = 0   Used to toggle between the two colors

    For R = 2 To LastRow
        ThisOrder = Cells(R, 1).Value
        PrvOrder = Cells(R - 1, 1).Value
        If ThisOrder <> PrvOrder Then Clr = 1 - Clr

         Select only the columns that are used
        Range("A" & R & ":M" & R).Select
        Selection.Interior.ColorIndex = RwColor(Clr)
    Next R
End Sub
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

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

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

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

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 40 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 22 visibility
0 دوستدار 0 امتیاز منفی
1 پاسخ 43 visibility
0 دوستدار 0 امتیاز منفی
1 پاسخ 46 visibility
0 دوستدار 0 امتیاز منفی
1 پاسخ 38 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

249 نفر آنلاین
0 عضو و 249 مهمان در سایت حاضرند
بازدید امروز: 4688
بازدید دیروز: 25180
بازدید کل: 20342041
...