İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Excel-də rəng rənginə əsaslanan rəngli rəng necədir?

Normal olaraq, bir chart yaratdığınızda, sütun çubuğunun rengi varsayılandır. Aşağıdakı ekran görünüşü kimi, hər bir çubuğa dolu rəngləri hüceyrə rənglərinə əsasən formatlaşdırmaq lazımdırsa, necə Excel-də həll edə bilərsən?

VBA kodu ilə hüceyrə rənginə əsaslanan bir məlumat seriyası ilə chart rəng

VBA kodu ilə hüceyrə rənginə əsaslanan bir sıra data seriyası ilə rəngləri rəngləndirin


VBA kodu ilə hüceyrə rənginə əsaslanan bir məlumat seriyası ilə chart rəng


Aşağıdakı VBA koduyla, orijinal hüceyrə dəyərlərinə əsaslanan bir məlumat seriyası olan chartın rəngini tez dəyişə bilərsiniz, belə edin:

1. Birincisi, aşağıdakı ekran görüntüsü kimi bir bar və ya sütun grafiği yaradın (Data seçin və vurun Taxmaq > Sütun və ya Bar Şemasını əlavə edin):

2. Basıb saxlayın ALT + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

3. Basın Taxmaq > Modulesvə Modul Pəncərəsində aşağıdakı kodu yapışdırın.

VBA kodu: Hüceyrə rənginə əsaslanan bir məlumat seriyası ilə rəngli çubuq barları:

Sub ColorChartColumnsbyCellColor()
'Updateby Extendoffice
    Dim xChart As Chart
    Dim I As Long, xRows As Long
    Dim xRg As Range, xCell As Range
    On Error Resume Next
    Set xChart = ActiveSheet.ChartObjects("Chart 1").Chart
    If xChart Is Nothing Then Exit Sub
    With xChart.SeriesCollection(1)
        Set xRg = ActiveSheet.Range(Split(Split(.Formula, ",")(1), "!")(1))
        xRows = xRg.Rows.Count
        Set xRg = xRg(1)
        For I = 1 To xRows
            .Points(I).Format.Fill.ForeColor.RGB = ThisWorkbook.Colors(xRg.Offset(I - 1, 0).Interior.ColorIndex)
        Next
    End With
End Sub

Qeyd: Yuxarıda göstərilən kodda, Diaqram 1 istifadə etmək istədiyiniz grafiğin adıdır, onu özünüzə dəyişdirin.

4. Yuxarıdakı kodu bağladıktan sonra, basın F5 bu kodu çalıştırmak üçün açar və grafik çubuklarının rengi orijinal hüceyrə rənginə əsasən dəyişdirilmişdir, bax ekran görüntüsü:


VBA kodu ilə hüceyrə rənginə əsaslanan bir sıra data seriyası ilə rəngləri rəngləndirin

Yuxarıdakı kod yalnız bir sıra məlumat seriyası chartinə tətbiq edilə bilər, əgər bir neçə data seriyası olan chart, aşağıdakı VBA kodunu tətbiq edin:

1. Xahiş edirik aşağıdakı ekran görüntüsü kimi bir çox məlumat serialını ehtiva bar və ya sütun chartini yaradın:

2. Basıb saxlayın ALT + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

3. Basın Taxmaq > Modules, və Modul penceresinde aşağıdakı kodu yapışdırın.

VBA kodu: Hüceyrə rənglərinə əsaslanan bir sıra məlumat seriyası ilə rəngli rəng barları:

Sub CellColorsToChart()
'Updateby Extendoffice
    Dim xChart As Chart
    Dim I As Long, J As Long
    Dim xRowsOrCols As Long, xSCount As Long
    Dim xRg As Range, xCell As Range
    On Error Resume Next
    Set xChart = ActiveSheet.ChartObjects("Chart 1").Chart
    If xChart Is Nothing Then Exit Sub
    xSCount = xChart.SeriesCollection.Count
    For I = 1 To xSCount
        J = 1
        With xChart.SeriesCollection(I)
            Set xRg = ActiveSheet.Range(Split(Split(.Formula, ",")(2), "!")(1))
            If xSCount > 4 Then
                xRowsOrCols = xRg.Columns.Count
            Else
                xRowsOrCols = xRg.Rows.Count
            End If
            For Each xCell In xRg
                .Points(J).Format.Fill.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
                .Points(J).Format.Line.ForeColor.RGB = ThisWorkbook.Colors(xCell.Interior.ColorIndex)
                J = J + 1
            Next
        End With
    Next
End Sub

4. Sonra basın F5 bu kodu çalıştırmak üçün açar, chart barları orijinal hüceyrələrin rəngini bir anda dolacaq, ekran görünüşünə baxın:

Qeydlər:

1. Yuxarıdakı kodda, Diaqram 1 istifadə etmək istədiyiniz grafiğin adıdır, onu özünüzə dəyişdirin.

2. Bu kod da bir xətt şkalasına tətbiq edilə bilər.



Təklif olunan Məhsuldarlıq Vasitələri

Office Tab

qızıl star1 Chrome, Firefox və yeni Internet Explorer kimi Excel və digər Office proqramlarına lazımlı sekmeleri gətirin.

Excel üçün Kutools

qızıl star1 Amazing! 5 dəqiqədə məhsuldarlığınızı artırın. Heç bir xüsusi bacarıqa ehtiyac yoxdur, hər gün iki saat saxlaya bilərsiniz!

qızıl star1 300 Excel üçün yeni funksiyalar, Excel çox asan və güclü olun:

  • Veriyi ləğv etmədən Cell / Satır / Sütunları birləşdirin.
  • Bir neçə Çarşaf və İş Kitabını birləşdirin və birləşdirin.
  • Çaprazları müqayisə edin, birdən çox aralığa kopyalayın, mətni tarixə, vahidə və valyuta çevrilməsinə çevirin.
  • Rənglər, Paging Subtotals, Advanced Sort və Super Filter tərəfindən sayılan,
  • Daha çox seçin / Insert / Sil / Mətn / Biçim / Bağlantı / Yorum / Çalışma kitabları / Çalışma Qurğuları Tools ...

Excel üçün Kutools-un ekranı

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Lisa · 3 months ago
    Thank you for the codes! How would you add a conditional format when the format is already established?
  • To post as a guest, your comment is unpublished.
    Armin · 7 months ago
    Thank you for these codes! This was exactly what I've been looking for with one detail not quite fitting. When I ran the code, the bar graphs colored in correctly but not legend which stayed unchanged. Is there a variation to the code that would include the legend? Or is there a way to match the Legend to the changes in the chart without a code?
  • To post as a guest, your comment is unpublished.
    WILLIAN GUSMÃO · 7 months ago
    If i have more charts in my sheet? do you have another code?