将有条件格式化的彩色行复制到另一个工作表

时间:2015-04-10 05:28:34

标签: excel vba excel-vba excel-2010 excel-2007

我有excel spreadhseet,在比较TAT值的天数后,有条件地格式化了不同的颜色。

现在,我想将每个彩色行复制到不同的工作表并命名工作表。

我同意这可以通过手动过滤颜色来实现,可以通过VBA代码完成吗?

数据放在表格的第6行。

此外,条件格式化的颜色将来可能会更改,因此代码应覆盖放置在不同工作表中的彩色行。

如果可以通过VBA代码实现,请确认并回复解决方案。

请查看下面的图片以获得更多理解。

enter image description here

1 个答案:

答案 0 :(得分:1)

这应该是你的出发点。

Sub Test() 
    Range("A1").Select 
    Selection.AutoFilter 
    ActiveSheet.Range("$A$1:$D$" & Range("A" & rows.count).end(xlUp).Row).AutoFilter Field:=1, Criteria1:=RGB(255, 0 _ 
    , 0), Operator:=xlFilterCellColor 
    Range("$A$1:$D$" & lastr).Select 
    Selection.SpecialCells(xlCellTypeVisible).Select 
    Selection.Copy
    ThisWorkbook.Sheets.Add.Name = "Red"
    Sheets("Red").select
    Range("A" & Range("A" & rows.count).end(XlUp).row).Select 
    ActiveSheet.Paste 
    Application.CutCopyMode = False 
End Sub