EXCEL中的數字變成不同顏色

2008-10-30 8:33 pm
我想將EXCEL中的數字變成不同顏色,如0至25=籃色、25至50=綠色、50以上=粉紅色、0至-25=橙色、-25以下為紅色。最小要分5種顏色。可否教我怎樣寫

回答 (3)

2008-10-30 10:14 pm
✔ 最佳答案
要用巨集才可以做到~
籃色 = -4165632
綠色 = -11489280
粉紅色 = -26113
橙色 = -16727809
紅色 = -16776961
COPY 以下段野去Visual Basic → Microsoft Excel 物件→ 如果你想在sheet1 做到你所講的效果就copy到sheet1, 想在sheet2就copy到sheet2, 咁就可以做到你講的效果~ 如果仲有野唔明就問我啦~


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value >= 0 And Target.Value <= 25 Then
Target.Font.Color = -4165632
ElseIf Target.Value > 25 And Target.Value <= 50 Then
Target.Font.Color = -11489280
ElseIf Target.Value > 50 Then
Target.Font.Color = -26113
ElseIf Target.Value < 0 And Target.Value >= -25 Then
Target.Font.Color = -16727809
ElseIf Target.Value < -25 Then
Target.Font.Color = -16776961
End If
End Sub

2008-10-30 14:27:18 補充:
右多2句咁寫會好d..
第一句 On Error GoTo F1:
第二句 F1:
第一句加在 Private Sub Worksheet_Change(ByVal Target As Range) 之後
第二句加在 End If 之後

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo F1:
If Target.Value >= 0 And Target.Value <= 25 Then ....
....
....Target.Font.Color = -16776961
End If
F1:
End Sub

2008-10-30 23:05:40 補充:
冇問題! 都做到你想要的效果~
不過如果你想淨係答案個行轉色~ 咁你就要野多2句~
如果你條公式係放係Column C 咁就打 = 3, 如果係 D 就打= 4 ....
第一句 If Target.Column = 3 Then
第二句 End If
第一句加在 Private Sub Worksheet_Change(ByVal Target As Range) 之後
第二句加在 End If 之後

2008-10-30 23:05:49 補充:
即係..

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo F1:
If Target.Column = 3 Then
If Target.Value >= 0 And Target.Value <= 25 Then ....
....
....Target.Font.Color = -16776961
End If
End If
F1:
End Sub

2008-10-30 23:47:33 補充:
sorry~ 之前個d 如果學你咁講係做唔到的~
要咁打才能

2008-10-30 23:48:07 補充:
Private Sub Worksheet_Calculate()

i = 1
a = Sheets("TEST").Range("C" & i).Value
While a <> ""
If a >= 0 And a <= 25 Then
Sheets("TEST").Range("C" & i).Font.Color = -4165632
ElseIf a > 25 And a <= 50 Then
Sheets("TEST").Range("C" & i).Font.Color = -11489280

2008-10-30 23:48:51 補充:
ElseIf a > 50 Then
Sheets("TEST").Range("C" & i).Font.Color = -26113
ElseIf a < 0 And a >= -25 Then
Sheets("TEST").Range("C" & i).Font.Color = -16727809
ElseIf a < -25 Then
Sheets("TEST").Range("C" & i).Font.Color = -16776961
End If
i = i + 1
a = Sheets("TEST").Range("C" & i).Value
Wend

End Sub

2008-10-30 23:52:59 補充:
2段加埋先係~

1.) TEST 果個字就用番你本身個SHEET NAME~ 不過如果你係本身係用SHEET1~ 我建議你改左佢做 TEST 或者其他名~ 但係如果你係個SHEET名唔係TEST 就要改埋段程式~

2.) 如果你D公式唔係放在第C行~ 咁你就係在程式入面的"C" 改番正確的行數~
2008-10-31 6:28 pm
格式條件可設3種, 儲存格格式又可設3種, 最多6個色
如用worksheet_change, 則可以數十種色, 但數字是公式變量, target是不會指向公式那一格, vba代碼需要考慮公式內的引用單元格, 如A1, B1, 假如A1, B1是在另一張worksheet或workbook, 則更麻煩
2008-10-30 9:02 pm
首先在選項欄-視圖-工具欄-點擊(格式),那你就會看到填充顔色啦


你按住CTRL健與鼠標一起拖拉(根據你所需要的範圍),即選定範圍

然後在格式欄中選擇你所需要的顔色,那以此類推..選到你所需要填充的顔色..

希望可以幫到你啦...
參考: ME


收錄日期: 2021-04-13 16:12:24
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20081030000051KK00549

檢視 Wayback Machine 備份