فروشگاه
انبارداری پیشرفته تحت اکسل

پیدا کردن عدد خاص و تغییر رنگ سلول اکسل VBA

پیدا کردن عدد خاص و تغییر رنگ سلول اکسل VBA با شما هستی با سری آموزش رایگان اکسل از دسته بندی بانک کد vba در اکسل توی این آموزش اکسل
برای شما نحوه پیدا کردن عدد خاص با تغییر رنگ سلول اکسل آموزش میدهید که یک آموزش بسیار کاربردی است.

پس ادامه آموزش را با آکادمی روح الله همراه باشید

آموزش های پیشنهادی برای شما

قبل از هر کاری آموزش زیر را مشاهده فرمایید👇

نحوه ذخیره فایل اکسل حاوی ماکرو

آموزش فعال کردن ماکرو اکسل

کار با رنگ ها در اکسل با استفاده از کدهای VBA

پیشنهاد آکادمی روح الله برای شما 

بانک کد VBA در اکسل

آموزش رایگان اکسل

در اکسل حرفه ای شوید روح الله

دوره های جامع اکسل

فایل های آماده اکسل

پیدا کردن عدد خاص و تغییر رنگ سلول اکسل با استفاده از کد نویسی VBA می توانید از کد های زیر استفاده کنید

روش اول پیدا کردن عدد خاص و تغییر رنگ سلول اکسل VBA

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

پیش نهاد آکادمی روح الله برای شما :
قرار دادن تصویر در صفحه چاپ اکسل

برای اجرای کد، به تب Developer رفته و روی دکمه‌ی “Visual Basic” کلیک کنید، سپس در پنجره باز شده، گزینه‌ی “Insert” را انتخاب کرده و سپس “Module” را انتخاب کنید. کد بالا را در پنجره‌ی باز شده وارد کرده و سپس کلید F5 را برای اجرای کد فشار دهید.

روش دوم پیدا کردن یک عدد خاص و تغییر رنگ  آن سلول اکسل با استفاده از کد نویسی vba

 

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

  1. ابتدا سلول‌هایی که می‌خواهید رنگ آن‌ها تغییر کند را انتخاب کنید.
  2. سپس به تب “Home” رفته و روی دکمه‌ی “Conditional Formatting” کلیک کنید.
  3. در منوی باز شده، گزینه‌ی “New Rule” را انتخاب کنید.
  4. در پنجره‌ی باز شده، گزینه‌ی “Use a formula to determine which cells to format” را انتخاب کرده و در فیلد زیر آن، فرمول زیر را وارد کنید:
پیش نهاد آکادمی روح الله برای شما :
3 روش کامل نحوه حذف فیلتر در اکسل VBA

=A1=خواسته_شما

در این فرمول، A1 به سلولی اشاره می‌کند که می‌خواهید در آن بررسی کنید که آیا مقدار مورد نظر موجود است یا نه. همچنین، خواسته_شما را با عددی که می‌خواهید پیدا کنید جایگزین کنید. 5. سپس برای تعیین رنگ سلول، روی دکمه‌ی “Format” کلیک کنید و رنگ مورد نظر خود را انتخاب کنید.

  1. در انتها روی دکمه‌ی “OK” کلیک کرده و تغییرات را ذخیره کنید.

اکنون، اگر عددی که می‌خواهید پیدا کنید در سلول مورد نظر وجود داشته باشد، رنگ سلول به رنگی که انتخاب کرده‌اید تغییر می‌کند.

میانگین رتبه 4/5 تعداد رای : 4
اکسل را حرفه ای یاد بگیر
نظر شما در مورد این مقاله چیست؟

نظر یا سوال شما در این مورد چیست؟

سلام دوست عزیز خوشحال میشوم نظر شما را در مورد این مقاله بدانم 👇

    میلاد صداقت

    البته این رو از طریق کد نویسی میخوام بدونم چون از conditional formatting راهش رو بلدم
    حتی کد vba اون هم تا حدودی بلدم ولی نمیدونم چططور با رویداد تغییر یک سلول کد اجرا باید بشه

    پاسخ

      برای اجرای کد VBA به وسیله رویداد تغییر یک سلول در اکسل، می‌توانید از رویداد “Worksheet_Change” استفاده کنید. در اینجا نحوه انجام این کار توضیح داده شده است:

      وارد ویرایشگر ماکروها در اکسل شوید با استفاده از Alt + F11.

      در پنجره کد VBA، مطمئن شوید که از کارشیت مورد نظر خود استفاده می‌کنید. برای این کار، در پنل “Project Explorer”، دوبار کلیک بر روی ورق مورد نظر خود کنید.

      اکنون کد VBA زیر را وارد کنید

      Private Sub Worksheet_Change(ByVal Target As Range)
      Dim ColorRange As Range
      Dim ColorIndex As Integer
      Dim ChangedCell As Range

      ' تنظیم محدوده مربوط به Validation Data
      Set ColorRange = Range("A1:A10") ' محدوده مورد نظر را تغییر دهید

      ' تنظیم مقدار تغییر یافته
      Set ChangedCell = Target

      ' بررسی آیا تغییر در محدوده Validation Data رخ داده است
      If Not Intersect(ChangedCell, ColorRange) Is Nothing Then
      ' تعیین رنگ بر اساس انتخاب کاربر
      ColorIndex = ChangedCell.Value

      ' برای مقادیر اعتبارسنجی دیگر، اقدام به تنظیم رنگ می‌کنیم
      For Each Cell In ColorRange
      If Cell.Address <> ChangedCell.Address Then
      If Cell.Value = ColorIndex Then
      ' تنظیم رنگ خانه‌ها
      Cell.Interior.Color = RGB(255, 0, 0) ' مثال: قرمز

      ' اگر می‌خواهید رنگ دیگری داشته باشید، رنگ مورد نظر خود را تغییر دهید
      Else
      ' تنظیم رنگ پیش‌فرض
      Cell.Interior.ColorIndex = xlColorIndexNone
      End If
      End If
      Next Cell
      End If
      End Sub

      در کد بالا، متغیرهای ColorRange و ColorIndex را به محدوده و مقدار مورد نظر خود تغییر دهید.

      حالا این کد واقعی خواهد شد و هر زمان که یک خانه از محدوده Validation Data تغییر کند، رنگ سلول‌های دیگر به تغییر خواهد کرد.

      از این روش برای اجرای کد VBA با رویداد تغییر سلول‌ها استفاده کنید.

      پاسخ
    میلاد صداقت

    سلام تشکر بابت مطالب آموزنده شما
    من میخوام با تغییر یک سلول خانه هایی از سلول های دیگه رنگش عوض بشه
    فرض مثال در بک سلول data validation به سه مقدار تعریف کردم
    حالا میخوام با هر بار انتخاب یکی از این مقادیر backcolor مقادیر خانه های دیگه تغییر کنه.ممنون میشم راهنمایی بفرمایید

    پاسخ

      سلام ارادت خدمت شما دوست عزیز برای این کار مراحل زیر را دنبال کنید بازهم متوجه نشدین بگوید تا برای تون یک آموزش ضبط کنم در این مورد

      ماکروها (VBA) در اکسل استفاده کنید. این کد به شما کمک می‌کند تا با تغییر مقدار یک خانه از Validation Data، رنگ سلول‌های دیگر تغییر کند.

      ابتدا وارد ویرایشگر ماکروها در اکسل شوید. برای این کار، از کلید میانبر Alt + F11 استفاده کنید.

      در ویرایشگر ماکروها، از منوی “Insert” یک ماژول جدید ایجاد کنید.

      در ماژول جدید، کد زیر را وارد کنید:

      Sub ChangeCellColor()
      Dim TargetCell As Range
      Dim ColorRange As Range
      Dim ColorIndex As Integer

      ' تنظیم محدوده مربوط به Validation Data
      Set ColorRange = Range("A1:A10") ' محدوده مورد نظر را تغییر دهید

      ' تعیین رنگ بر اساس انتخاب کاربر
      ColorIndex = ActiveCell.Value

      ' برای مقادیر اعتبارسنجی دیگر، اقدام به تنظیم رنگ می‌کنیم
      For Each TargetCell In ColorRange
      If TargetCell.Address <> ActiveCell.Address Then
      If TargetCell.Value = ColorIndex Then
      ' تنظیم رنگ خانه‌ها
      TargetCell.Interior.Color = RGB(255, 0, 0) ' مثال: قرمز

      ' اگر می‌خواهید رنگ دیگری داشته باشید، رنگ مورد نظر خود را تغییر دهید
      Else
      ' تنظیم رنگ پیش‌فرض
      TargetCell.Interior.ColorIndex = xlColorIndexNone
      End If
      End If
      Next TargetCell
      End Sub

      در کد بالا، ColorRange محدوده خانه‌های Validation Data است. شما می‌توانید این محدوده را با محدوده‌ای که شما در فایل اکسل خود دارید تعویض کنید.

      آماده‌اید! اکنون می‌توانید ماکرو را اجرا کنید. به اکسل برگردید، محدوده‌ای از خانه‌های Validation Data را انتخاب کرده و سپس ماکرو “ChangeCellColor” را اجرا کنید. تغییر مقدار خانه‌ها و رنگ‌های آن‌ها را ببینید.

      این روش به شما امکان می‌دهد با تغییر مقادیر اعتبارسنجی، رنگ خانه‌های دیگر تغییر کند. اگر می‌خواهید رنگ‌ها را به رنگهای دیگری تغییر دهید، رنگ RGB مورد نظر خود را در کد تعویض کنید.
      موفق باشید مثل همیشه

      پاسخ