بنده نقشه یه طبقه رو دارم که توش مغازه هام مشخص شده .
و یه جدول دارم که اطلاعات اون مغازه ها رو توش زدم.(مثل متراژ ، شماره مغازه و ...)
من روی هر مغازه یه Shape دایره شکل ایجاد کردم که با توجه به وضعیت مغازه میخوام رنگ اون دایره عوض بشه.
یعنی مثلا اگه تو جدول مغازه شماره 1 فروخته شد رنگ دایره بشه قرمز . اگه رزور بود بشه آبی و ....
(یعنی با توجه به Cell Value ، رنگ دایره تغییر کنه)
برای این کار از این کد استفاده کردم که چند تا اشکال داره
Select Case Range("e2").Value
Case "رزرو شده": ActiveSheet.Shapes("Oval1").Fill.ForeColor.RGB = vbBlue
Case "فروخته شده": ActiveSheet.Shapes("Oval1").Fill.ForeColor.RGB = vbRed
Case "آماده فروش": ActiveSheet.Shapes("Oval1").Fill.ForeColor.RGB = vbGreen
Case "اجاره داده شده": ActiveSheet.Shapes("Oval1").Fill.ForeColor.RGB = vbYellow
End Select
دوم اینکه من حدود 150 تا مغازه دارم اگه بخوام برای هر سلول همین کد رو تکرار کنم خیلی زمانبر و چر خطا میشه.
امکانش هست از یه حلقه استفاده کنم تا کد ها کمتر بشه ؟
و یه سوال دیگه دارم
من برای فیلتر کردن جدولم از چند تا چک باکس استفاده کردم . تا کاربر مثلا تیک رزور شده ها و اماده فروش ها رو انتخاب کنه و این دو توی جدول فیلتر بشن و روی نقشه هم همون مغازه ها رنگی بشن . الان فقط یکی رو فیلتر میکنه



کامنت