① Excel利用宏填充顏色
If Sheets(1).Selection.Interior.ColorIndex = 15 Then
運行這句時會顯示: 對象不支持該屬性或方法.問題在於前一句定義了"Sheets(1).Cells(i, j).Select"
所以這里只用 "If Selection.Interior.ColorIndex = 15 Then"
另外,如果只是將程序改為 "If Selection.Interior.ColorIndex = 15 Then" 那麼下面的判斷就不能用
Sheets(2).Cells(i, j).Select
Sheets(2).Selection.Interior.ColorIndex = 1
這兩句, 因為Sheets(2).Cells(i, j).Select這句會造成Selection區域的改變,從而會產生新的錯誤.
Sub 填色()
Dim i As Integer
Dim j As Integer
Sheets(1).Select
For i = 1 To Sheets(1).UsedRange.Rows.Count
For j = 1 To Sheets(1).UsedRange.Columns.Count
Sheets(1).Cells(i, j).Select
If Selection.Interior.ColorIndex = 15 Then
Sheets(2).Cells(i, j).Interior.ColorIndex = 1
End If
Next j
Next i
End Sub
把程序改為這樣,應該是比較少的改動了.如果你想優化,還是參照上面的回復.
② Eecel中如何實現使用宏命令改變表格內所有字體顏色
該表表格所有字體顏色的VBA代碼:
Cells.Font.Color=RGB(0,255,0)
RGB表示紅、綠、藍的組合,如果需要為白色就是RGB(255,255,255),黑色就是RGB(0,0,0)