Czy ktoś może podać przykład zmiany kolorów wykresu kołowego? (Rzeczywiste kawałki wykresu kołowego). Kawałki są nazywane punktami? Chciałbym wybrać kolor za pomocą RGB dla każdego elementu. Dzięki!
Czy ktoś może podać przykład zmiany kolorów wykresu kołowego? (Rzeczywiste kawałki wykresu kołowego). Kawałki są nazywane punktami? Chciałbym wybrać kolor za pomocą RGB dla każdego elementu. Dzięki!
Odpowiedzi:
Osobiście Blog Peltiera to moje ulubione źródło wykresów w Excelu. Więc spójrz na niektóre próbki, o których tam dyskutował. Wiedzieć więcej tutaj to MVP
Nie sądzę, żeby wspaniale było tutaj kopiować jego kody . Wypróbuj więc tutoriale podane w powyższych materiałach i skomentuj, jeśli masz dodatkowe pytania. A oto kilka faktów, które uważam za pomocne w twoim przypadku Planowanie podróży być gładkim i zabawnym.
Być bardzo konkretnym RGB Colour
formatowanie twojego pie chart
plasterki, oto linia kodu:
Na przykład.
ActiveChart.SeriesCollection(1).Points(1).Interior.Color = RGB(0, 176, 80)
Możesz znaleźć RGB
numery kolorów z MS Paint
aplikacja w systemie Windows :)
Tutaj jest artykuł, który pokazuje niektóre kolory i odpowiadające im RGB
liczby.
Ponieważ spektrum kolorów jest nieskończone, powinno być wystarczająco dobre, aby zabarwić Twoje dodatkowe multi plasterki pie chart
, możesz myśleć ... JEDNAK nie zapomnij, że domyślna paleta kolorów Excel ma 56 indeksów kolorów. Podobnie jak w programie Excel 2003. Czasami pojawiają się problemy z używaniem pliku Chart w innej wersji programu Excel - tam, gdzie brakuje niektórych kolorów i są one zastępowane przez mało atrakcyjne stare kolory;)
Na przykład. Wykres utworzony w programie Excel 2007 i nowszych ma bogate graficzne wrażenia kolorystyczne dla użytkownika. Jednak program Excel 2003 nie zapewnia takich możliwości, ale jest łatwy w zarządzaniu (choć niezwykle wydajny). W programie Excel 2007 i nowszych skoroszytach można obsługiwać miliony kolorów, ale nadal istnieje podstawowa paleta skoroszytów, która ma 56 kolorów.
Tak więc, kiedy napotkasz takie problemy lub zostaniesz przeczytany, aby sobie z tym poradzić, sprawdź ten artykuł:
Sub ColorPieCharts()
Dim iX As Integer
Dim iY As Integer
Dim bHasDataLabels As Boolean
Dim bShowSeriesName As Boolean
Dim bShowCategoryName As Boolean
Dim bShowValue As Boolean
Dim bShowPercentage As Boolean
Dim bLegendKey As Boolean
Dim bHasLeaderLines As Boolean
SetWorkbookColors
For iX = 1 To ActiveSheet.ChartObjects.Count
ActiveSheet.ChartObjects(iX).Select
'Determine DataLabel status
On Error Resume Next
bHasDataLabels = ActiveChart.SeriesCollection(1).HasDataLabels
'bLegendKey = ActiveChart.SeriesCollection(1).LegendKey
bHasLeaderLines = ActiveChart.SeriesCollection(1).HasLeaderLines
bShowSeriesName = ActiveChart.SeriesCollection(1).DataLabels.ShowSeriesName
bShowCategoryName = ActiveChart.SeriesCollection(1).DataLabels.ShowCategoryName
bShowValue = ActiveChart.SeriesCollection(1).DataLabels.ShowValue
bShowPercentage = ActiveChart.SeriesCollection(1).DataLabels.ShowPercentage
On Error GoTo 0
ActiveChart.ApplyDataLabels AutoText:=True, _
HasLeaderLines:=True, ShowSeriesName:=False, ShowCategoryName:=True, _
ShowValue:=False, ShowPercentage:=False, ShowBubbleSize:=False
For iY = 1 To ActiveChart.SeriesCollection(1).Points.Count
Select Case ActiveChart.SeriesCollection(1).Points(iY).DataLabel.Text
Case Is = "a"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 1
Case Is = "b"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 2
Case Is = "c"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 3
Case Is = "d"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 4
Case Is = "e"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 5
Case Is = "f"
ActiveChart.SeriesCollection(1).Points(iY).Interior.ColorIndex = 6
Case Else
'Other groups get no special color
End Select
Next
Next
End_Sub:
If bHasDataLabels Then
ActiveChart.ApplyDataLabels AutoText:=True, _
HasLeaderLines:=True, ShowSeriesName:=bShowSeriesName, ShowCategoryName:=bShowCategoryName, _
ShowValue:=bShowValue, ShowPercentage:=bShowPercentage, ShowBubbleSize:=False
Else
ActiveChart.SeriesCollection(1).HasDataLabels = False
End If
End Sub
Sub SetWorkbookColors()
ActiveWorkbook.Colors(1) = RGB(0, 0, 0)
ActiveWorkbook.Colors(2) = RGB(0, 0, 100)
ActiveWorkbook.Colors(3) = RGB(0, 100, 0)
ActiveWorkbook.Colors(4) = RGB(0, 100, 100)
ActiveWorkbook.Colors(5) = RGB(100, 0, 0)
ActiveWorkbook.Colors(6) = RGB(100, 0, 100)
End Sub
Sub ResetWorkbookColors()
ActiveWorkbook.ResetColors
End Sub