Surface-graafin värien muuttaminen

1+14

Haluaisin tehdä makron, jolla muutan surface-tyypin värejä. Manuaalisesti tämä onnistuu, mutta se on älyttömän hankalaa. Haluan, että värit kattavat tietyln skaalan, vaikka Labelien lukumäärä vaihtelee.. En ole keksinyt, miten tämä tehdään.

7

179

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Mr. VBA

      Moi, toimisiko alla oleva ? Moduulin alkuun (aivan moodulin alkuun) teksti

      Option Base 1

      ja sitten alemmas makro

      Sub GraafiVarit()
      ' makrolla voi muuttaa graafien sarjojen värejä
      ' toimii vain aktiiviseen kaavioon, legend tulee olla myös esillä kaaviossa
      ' HUOM! moduulin alkuun tulee lisätä lause "Option Base 1"

      Dim Varit() As Variant
      Dim Leg As Integer
      Dim i As Integer

      ' määrittele seuraavalla rivillä array-muuttujan arvoiksi haluamasi väriarvot
      ' esim joka toinen eri väri-> Varit = Array(5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4)
      ' oletuksena alla 12 eri väriä

      Varit = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

      On Error Resume Next
      Leg = ActiveChart.Legend.LegendEntries.Count

      For i = 1 To UBound(Varit)
      ActiveChart.Legend.LegendEntries(i).LegendKey.Interior.ColorIndex = Varit(i)
      Next i

      End Sub

    • "Haluan, että värit kattavat tietyln skaalan, vaikka Labelien lukumäärä vaihtelee.. .."
      ;-)

      Keep EXCELing
      @Kunde

      • 1+14

        Sorry, ei Label, vaan Band. En keksi, millä saan muutettua Bandin väriä, ts. tuota kommentiksi muutettua riviä olen yrttänyt tuloksetta kirjoittaa monella tavalla.

        Private Sub SpinButton2_Change()
        ActiveSheet.ChartObjects("Chart 1").Activate
        Application.ScreenUpdating = False
        With ActiveChart
        le = SpinButton2.Value
        Max = .Axes(xlValue).MaximumScale
        .Axes(xlValue).MinimumScale = Max - le
        n = 0
        For Each objLE In ActiveChart.Legend.LegendEntries
        ' objLE.LegendKey.MarkerForegroundColor = Väri(n / le)
        n = n 1
        Next
        End With
        End Sub


      • ...
        1+14 kirjoitti:

        Sorry, ei Label, vaan Band. En keksi, millä saan muutettua Bandin väriä, ts. tuota kommentiksi muutettua riviä olen yrttänyt tuloksetta kirjoittaa monella tavalla.

        Private Sub SpinButton2_Change()
        ActiveSheet.ChartObjects("Chart 1").Activate
        Application.ScreenUpdating = False
        With ActiveChart
        le = SpinButton2.Value
        Max = .Axes(xlValue).MaximumScale
        .Axes(xlValue).MinimumScale = Max - le
        n = 0
        For Each objLE In ActiveChart.Legend.LegendEntries
        ' objLE.LegendKey.MarkerForegroundColor = Väri(n / le)
        n = n 1
        Next
        End With
        End Sub

        MarkerForegroundColor = RGB(0,255,0)


      • 1+14
        ... kirjoitti:

        MarkerForegroundColor = RGB(0,255,0)

        Millaisen rimpsun perään tuo MarkerForegroundColor on laitettava, jotta sille voidaan antaa arvo?


      • 1+14
        1+14 kirjoitti:

        Millaisen rimpsun perään tuo MarkerForegroundColor on laitettava, jotta sille voidaan antaa arvo?

        No, jo keksin. Ei mikään MarkerForegroundColor olekaan. Yllä kommentoitu rivi pitää olla muodossa:

        objLE.LegendKey.Interior.Color = Väri(n / ny)


    • 1+14

      Ei Label, vaan Band.Sorry. En ole onnistunut muuttamaan Bandien värejä.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Voisin jopa maksaa että saisin nähdä sut mies

      Miten helvetissä joku voi olla tollanen kotihiiri. Edes mä en ole noin paha ku sä! Miten sua voi ikinä edes nähdä ?
      Ikävä
      63
      1271
    2. Tumman vihreä mercedes

      Mikä se on tuo kylää ympäri ajava vihreä mercedes, takakontti tärisee kuin hullu ja välillä kylän juoppojakin kuskailee,
      Hyrynsalmi
      11
      900
    3. Miksi tällainen pelottaa ja aiheuttaa joillakin ärtymystä?

      "Sitoudun ystävien ja kollegoiden kanssa puuttumaan seksistisiin vitseihin ja vähättelyyn. Sanon ääneen, kun jokin ei ol
      Maailman menoa
      75
      825
    4. Käyttäkää kumia kajaanilaisten naisten kanssa

      Elkää ottako riskiä ilman kumia kun saattaa käydä niin että sinusta tuleekin isä lapselle ja elättäjä molemmille.
      Kajaani
      87
      702
    5. Rakastan sinua

      Päivä päivältä enemmän 🥰 Miehelle.
      Ikävä
      53
      644
    6. Tunnusmerkkejä Kaivatulle

      Jotain mistä toinen tunnistaa. Täällä vaalea nainen kaipaa miestä jolla vaaleat hiukset ja asuu maalla. Pelataanko kortt
      Ikävä
      37
      589
    7. Pakkomielle

      Tahdon pyytää anteeksi, että olen kaivannut sinua kaikki nämä vuodet ja olet ollut minulle pakkomielle. Nyt on aika pääs
      Ikävä
      46
      574
    8. Jymyuutinen: Suomen talous kasvaa hurjaa vauhtia

      https://www.iltalehti.fi/talous/a/11fba8a8-a7fb-44f4-a58b-f129f6d5bdf5 Akavan pääekonomistin mukaan Suomen kokonaistuot
      Maailman menoa
      121
      536
    9. Oletko nainen enää täällä?

      En ole tunnistanut kirjoituksiasi hetkeen. Ainoastaan yhdessä neutraalissa ketjussa, missä ei ollut kyse tunteista. Hyv
      Ikävä
      36
      534
    10. Hurmasit sitten minut

      kauneudellasi nainen ja kun sait minut rakastumaan itseesi muutuit ihan porsaaksi etkä välitä vartalostasi enää yhtään.
      Ikävä
      43
      523
    Aihe