循环以有条件地格式化多个工作表范围内的单元格
Loop to conditionally format cells in ranges over multiple worksheets
我正在尝试有条件地格式化多个作品sheet中的单元格。范围的大小每个 sheet(可能每个月)不同。每个sheet都会有一个表头,列数也会不同,但是要格式化的数据总是从A6开始。
我成功地选择了每个 sheet 的最后一个单元格,并且我成功地格式化了每个作品的几个单元格 sheet。但是,当我尝试组合这些步骤时,我没有成功。
Sub comfor()
Dim ws As Worksheet, LstR As Range
For Each ws In ActiveWorkbook.Sheets
Set LstR = ws.Range("A6").SpecialCells(xlLastCell)
For Each cell In LstR
If cell.Text = "Complete" Then
cell.Font.Color = 5287936
cell.Replace What:="Complete", Replacement:="R"
cell.Font.Name = "Wingdings 2"
End If
Next cell
Next ws
End Sub
谢谢!
像这样(未经测试)
Sub comfor()
Dim ws As Worksheet, cell As Range
For Each ws In ActiveWorkbook.Sheets
For Each cell In ws.range(ws.range("A6"), _
ws.Range("A6").SpecialCells(xlLastCell)).cells
With cell
If .Text = "Complete" Then
.Font.Color = 5287936
.Value ="R"
.Font.Name = "Wingdings 2"
End If
End with
Next cell
Next ws
End Sub
我正在尝试有条件地格式化多个作品sheet中的单元格。范围的大小每个 sheet(可能每个月)不同。每个sheet都会有一个表头,列数也会不同,但是要格式化的数据总是从A6开始。
我成功地选择了每个 sheet 的最后一个单元格,并且我成功地格式化了每个作品的几个单元格 sheet。但是,当我尝试组合这些步骤时,我没有成功。
Sub comfor()
Dim ws As Worksheet, LstR As Range
For Each ws In ActiveWorkbook.Sheets
Set LstR = ws.Range("A6").SpecialCells(xlLastCell)
For Each cell In LstR
If cell.Text = "Complete" Then
cell.Font.Color = 5287936
cell.Replace What:="Complete", Replacement:="R"
cell.Font.Name = "Wingdings 2"
End If
Next cell
Next ws
End Sub
谢谢!
像这样(未经测试)
Sub comfor()
Dim ws As Worksheet, cell As Range
For Each ws In ActiveWorkbook.Sheets
For Each cell In ws.range(ws.range("A6"), _
ws.Range("A6").SpecialCells(xlLastCell)).cells
With cell
If .Text = "Complete" Then
.Font.Color = 5287936
.Value ="R"
.Font.Name = "Wingdings 2"
End If
End with
Next cell
Next ws
End Sub