نمایش نتایج: از شماره 1 تا 8 , از مجموع 8

موضوع: رنگ بندی خودکار

  1. #1


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    رنگ بندی خودکار

    سلام دوستان عزیز

    من 5 تا سلول دارم به فرض a1 و b1 و c1 و d1 و e1

    به یک کدی نیاز دارم که وقتی روی هر سلول کلیک کرد رنگش تغییر کنه و بقیه سلول ها بی رنگ بشن
    مثل سلول a1 کلیک کردم فرض رنگش زرد بشه و بقیه بی رنگ باشن
    حالا وقتی روی b1 کلیک کرد بقیه رنگشون سفید باشه و تنها b1 تغییر کنه
    کلا میخوام برای هر ردیف این جالت باشه و فقط هم بین این 5 تا سلول ها

    ممنونم
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    پاسخ مورد نظر براي اين تاپيك ارسال شده است.


  2.  

  3. #2


    آخرین بازدید
    2023/08/17
    تاریخ عضویت
    March 2015
    محل سکونت
    آمل
    نوشته ها
    3,342
    امتیاز
    11574
    سپاس
    1,884
    سپاس شده
    8,164 در 3,010 پست
    تعیین سطح نشده است

    با سلام

    در فایل پیوست با انتخاب هر یک از سلولهای A1:E1 به یک رنگ مشخص تغییر مینماید

    کد PHP:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If 
    Target.Count 1 Then GoTo 0


        
    If Not Intersect(TargetMe.Range("A1:E1")) Is Nothing Then
        

    If Target.Address "$A$1" Then

    Range
    ("A1").Interior.ColorIndex 3

    Range
    ("B1:E1").Interior.ColorIndex 0


    ElseIf Target.Address "$B$1" Then

    Range
    ("B1").Interior.ColorIndex 4

    Range
    ("A1").Interior.ColorIndex 0

    Range
    ("C1:E1").Interior.ColorIndex 0


    ElseIf Target.Address "$C$1" Then

    Range
    ("C1").Interior.ColorIndex 5

    Range
    ("A1:B1").Interior.ColorIndex 0

    Range
    ("E1").Interior.ColorIndex 0


    ElseIf Target.Address "$D$1" Then

    Range
    ("D1").Interior.ColorIndex 6

    Range
    ("A1:C1").Interior.ColorIndex 0

    Range
    ("E1").Interior.ColorIndex 0


    ElseIf Target.Address "$E$1" Then

    Range
    ("E1").Interior.ColorIndex 7

    Range
    ("A1:D1").Interior.ColorIndex 0

    End 
    If
       
       
    End If
       
    0

    End Sub 
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: xls book2.xls اطلاعات (33.5 کیلو بایت, 8 نمایش)


  4. #3


    آخرین بازدید
    2020/11/06
    تاریخ عضویت
    March 2015
    محل سکونت
    تهران
    نوشته ها
    1,248
    امتیاز
    2327
    سپاس
    600
    سپاس شده
    2,238 در 1,001 پست
    تعیین سطح نشده است

    با سلام
    این روش رو هم ملاحظه کنید.

    کد:
    Private Sub Worksheet_selectionChange(ByVal Target As Range) Range("a1:e1").Interior.ColorIndex = 6 If Not Application.Intersect(Target, Cells(1, 1)) Is Nothing Then Range("B1:e1").ClearFormats Target.Interior.ColorIndex = 6 End If If Not Application.Intersect(Target, Cells(1, 2)) Is Nothing Then Range("A1", Range("c1:e1")).ClearFormats Target.Interior.ColorIndex = 6 End If If Not Application.Intersect(Target, Cells(1, 3)) Is Nothing Then Range("a1:b1", Range("d1:e1")).ClearFormats Target.Interior.ColorIndex = 6 End If If Not Application.Intersect(Target, Cells(1, 4)) Is Nothing Then Range("a1:c1", Range("e1")).ClearFormats Target.Interior.ColorIndex = 6 End If If Not Application.Intersect(Target, Cells(1, 5)) Is Nothing Then Range("a1:d1").ClearFormats Target.Interior.ColorIndex = 6 End If End Sub
    فايل هاي پيوست شده فايل هاي پيوست شده
    ای برادر تو همه اندیشه ای


  5. #4


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    ممنونم دوست عزیز
    اما مشکلی که هست وقتی برای ادامه به ردیف های بعدی میرم ردیف قبلی همه زرد میشن

    من مثلامیخوام فقط برای 5 ردیف و ازستوان a تاe این حالت وجود داشته باشه
    ممنونم


  6. #5


    آخرین بازدید
    10 ساعت پیش
    تاریخ عضویت
    November 2013
    محل سکونت
    تهران
    نوشته ها
    1,518
    امتیاز
    6118
    سپاس
    2,884
    سپاس شده
    4,886 در 1,380 پست
    سطح اکسل
    71.67 %

    سلام، ببينيد اينجوري منظورتون است:
    کد PHP:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If 
    Target.Row >= And Target.Row <= 5 Then
    If Target.Column >= And Target.Column <= 5 Then
    Range
    ("A1:E5").Interior.ColorIndex 0
    Cells
    (Target.Row1).Interior.ColorIndex 6
    Cells
    (Target.Row2).Interior.ColorIndex 6
    Cells
    (Target.Row3).Interior.ColorIndex 6
    Cells
    (Target.Row4).Interior.ColorIndex 6
    Cells
    (Target.Row5).Interior.ColorIndex 6
    Target
    .Interior.ColorIndex 0
    End 
    If
    End If
    End Sub 
    يا اين يکي:
    کد PHP:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If 
    Target.Row >= And Target.Row <= 5 Then
    If Target.Column >= And Target.Column <= 5 Then
    Cells
    (Target.Row1).Interior.ColorIndex 6
    Cells
    (Target.Row2).Interior.ColorIndex 6
    Cells
    (Target.Row3).Interior.ColorIndex 6
    Cells
    (Target.Row4).Interior.ColorIndex 6
    Cells
    (Target.Row5).Interior.ColorIndex 6
    Target
    .Interior.ColorIndex 0
    End 
    If
    End If
    End Sub 

  7. سپاس ها (3)


  8. #6


    آخرین بازدید
    2020/11/06
    تاریخ عضویت
    March 2015
    محل سکونت
    تهران
    نوشته ها
    1,248
    امتیاز
    2327
    سپاس
    600
    سپاس شده
    2,238 در 1,001 پست
    تعیین سطح نشده است

    با سلام
    این فایل نمونه رو هم ببینید فکر کنم با کد های ارسالی دوستان تمام شرایط ممکن بدست امده باشه.
    فايل هاي پيوست شده فايل هاي پيوست شده
    ای برادر تو همه اندیشه ای

  9. سپاس ها (2)


  10. #7


    آخرین بازدید
    تاریخ عضویت
    January 2014
    نوشته ها
    798
    امتیاز
    1667
    سپاس
    590
    سپاس شده
    1,242 در 436 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط amir_ts نمایش پست ها
    با سلام
    این فایل نمونه رو هم ببینید فکر کنم با کد های ارسالی دوستان تمام شرایط ممکن بدست امده باشه.
    این فایل و کد دوستمون پارسا کارمو راه انداخت
    حالا اگه فرضا ی وقت بخوام برای هر ردیف بشه یعنی از محدوده a1 تا e1 همین روش

    برای a2 تا e2 هم همین
    یعنی برای هر ردیف فقط بشه یکی رو انتخاب کرد چطور کداش تغییر می کنن؟


  11. #8


    آخرین بازدید
    2020/11/06
    تاریخ عضویت
    March 2015
    محل سکونت
    تهران
    نوشته ها
    1,248
    امتیاز
    2327
    سپاس
    600
    سپاس شده
    2,238 در 1,001 پست
    تعیین سطح نشده است

    این فایل رو هم ببینید. امیدوارم منظور شما رو درست متوجه شده باشم.
    کد:
    Private Sub Worksheet_selectionChange(ByVal Target As Range) Range("A1:E5").Interior.ColorIndex = 6 If Intersect(Target, Range("A1:E5")) Is Nothing Then Exit Sub Select Case Target.Row Case Is = 1 Range("A2:E5").ClearFormats Range(Cells(Target.Row, "A"), Cells(Target.Row, "E")).Interior.ColorIndex = 6 Case Is = 2 Range("A1:E1", Range("A3:E5")).ClearFormats Range(Cells(Target.Row, "A"), Cells(Target.Row, "E")).Interior.ColorIndex = 6 Case Is = 3 Range("A1:E2", Range("A4:E5")).ClearFormats Range(Cells(Target.Row, "A"), Cells(Target.Row, "E")).Interior.ColorIndex = 6 Case Is = 4 Range("A1:E3", Range("A5:E5")).ClearFormats Range(Cells(Target.Row, "A"), Cells(Target.Row, "E")).Interior.ColorIndex = 6 Case Is = 5 Range("A1:E4").ClearFormats Range(Cells(Target.Row, "A"), Cells(Target.Row, "E")).Interior.ColorIndex = 6 End Select End Sub
    فايل هاي پيوست شده فايل هاي پيوست شده
    ای برادر تو همه اندیشه ای

  12. سپاس ها (2)



اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

بازدید کنندگان با جستجو های زیر این صفحه را پیدا کرده اند

انجمن اكسل ايران , اكسل , اكسس , سوال و جواب اكسل , سوال اكسس , انجمن اكسل ايران , توابع اكسل, آموزش اكسل, آموزش اكسس, VBA, ويژوال بيسيك

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
  • BB code ها فعال هستند
  • شکلک ها فعال هستند
  • کد [IMG] فعال است
  • کد [VIDEO] فعال است
  • کد HTML غیر فعال است