با سلام و احترام خدمت اساتید عزیز
نیاز به کمک جهت رفع اشکال فیلتر رنگ ( رنگ سلول از طریق : Conditional Formating ایجاد شده است )!
مفروضات :
سه شیت به نام Home ، A، B در اختیار داریم که در دوشیت A و B سطر هایی که شماره چک غیر تکراری دارند بصورت اتوماتیک تشخیص داده شده و رنگی می شوند.
و ماکرویی در اختیار داریم که این سلول های رنگی رو به شیت Home انتقال می دهند.
مشکل موجود :
در اون قسمت از ماکرو که جهت شناسایی سلول های رنگی تهیه شده است :
، این شناسایی فقط زمانی صورت می گیرد که سلول های مربوطه از طریق پالت رنگ رنگ آمیزی شده باشند! تا کار انتقال انجام شود ! در حالی که من این سلول های رنگی رو از طریق Conditional Formating رنگی کردم نه پالت رنگ بصورت دستی !
کد شناسایی رنگ و فیلتر رنگ مربوطه :
برای رفع این مشکل من مجبور شدم به ماکروی مربوطه مواردی را اضافه کنم که طی آن بیاد در اخر هر جدول یک ردیف خالی ایجاد کنه و اخرین سلول خالی رو از پالت رنگ ، به رنگ مخصوص تبدیل کند تا تمام سلول هایی که از طریق Conditional Formating هم رنگی شده اند در شناسایی این ماکرو تشخیص داده شده و لحاظ شوند ! و فیلتر سلول های رنگ انجام پذیرد و در اخر آخرین سطر خالی ایجاد شده رو حذف می کنم ! و انتقال سلول های رنگی انجام میشه .
درخواست :
با بررسی که انجام دادم https://msdn.microsoft.com/en-us/lib...ffice.12).aspx
برای حل مسله و شناسایی رنگ سلول ها که با Conditional Formating ایجاد شده باشند، بایستی به جای :
از آیتم : FormatColor Object ، استفاده کرد تا شناسایی درست صورت گرفته و نیازی به اضافه کردن سطر جدید به اخر جدول و رنگ کردن آن ا از طریق پالت رنگ نبوده ، اما مسله نهایی اینجاست که من نمی دونم چطور باید از FormatColor Object به جای .Interior.ColorIndex = 49 ، استفاده کنم ! لطفا در صورت امکان راهنمایی بفرمایید .

خیلی خیلی ممنونم.
نیاز به کمک جهت رفع اشکال فیلتر رنگ ( رنگ سلول از طریق : Conditional Formating ایجاد شده است )!
مفروضات :
سه شیت به نام Home ، A، B در اختیار داریم که در دوشیت A و B سطر هایی که شماره چک غیر تکراری دارند بصورت اتوماتیک تشخیص داده شده و رنگی می شوند.
و ماکرویی در اختیار داریم که این سلول های رنگی رو به شیت Home انتقال می دهند.
مشکل موجود :
در اون قسمت از ماکرو که جهت شناسایی سلول های رنگی تهیه شده است :
کد:
.Interior.ColorIndex = 49
کد شناسایی رنگ و فیلتر رنگ مربوطه :
کد:
Sub FilterBlueRow() za1 = Sheet2.Cells(Sheet2.Rows.Count, "C").End(xlUp).Row For I = 2 To za1 If Range("C" & I).Interior.ColorIndex = 49 Then ActiveSheet.ListObjects("Table269").Range.AutoFilter Field:=3, Criteria1:=RGB _ (22, 54, 92), Operator:=xlFilterCellColor Exit For End If Next I End Sub
کد:
Sub FilterBlueRow() Range("C2").Select Selection.End(xlDown).Select Selection.ListObject.ListRows.Add AlwaysInsert:=True ' Range("C7").Select Selection.End(xlDown).Select With Selection.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorLight2 .TintAndShade = -0.249977111117893 .PatternTintAndShade = 0 End With za1 = Sheet2.Cells(Sheet2.Rows.Count, "C").End(xlUp).Row For I = 2 To za1 If Range("C" & I).Interior.ColorIndex = 49 Then ActiveSheet.ListObjects("Table269").Range.AutoFilter Field:=3, Criteria1:=RGB _ (22, 54, 92), Operator:=xlFilterCellColor Exit For End If Next I Range("C2").Select Selection.End(xlDown).Select Selection.End(xlDown).Select Selection.EntireRow.Delete End Sub
درخواست :
با بررسی که انجام دادم https://msdn.microsoft.com/en-us/lib...ffice.12).aspx
برای حل مسله و شناسایی رنگ سلول ها که با Conditional Formating ایجاد شده باشند، بایستی به جای :
کد:
.Interior.ColorIndex = 49
خیلی خیلی ممنونم.