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

85

    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. Ketä ikävöit?

      Tuntomerkkejä jos täällä oikeat kohtaavat❤️
      Ikävä
      148
      3299
    2. Juniorivalmennus Jokereissa..

      Mitä hittoa siellä seurassa oikein tapahtuu?? Tämän kauden U14 ikäluokkaan on mahdutettu kaksi päävalmentajaa. Tälle kau
      Nuorten jääkiekko
      59
      2638
    3. Ammuskelua taas

      Keskipohjanmaa tietää kertoa että Yläpubin hujakoilla ammuskeltu lauantain vastaisena yönä.
      Kokkola
      30
      2080
    4. Et saa mua ikinä

      Oma vikasi. Naiselta.
      Ikävä
      130
      1667
    5. Seksikkäin asu mikä päällä olet nähnyt kaivattusi ?

      Seksikkäin asu mikä yllä olet nähnyt kaivattusi ?
      Ikävä
      83
      1514
    6. Päivämääriä

      Minä päivämääränä näit kaivattusi viimeksi?
      Ikävä
      77
      1498
    7. Introverttinä osastolla

      Yhdellä lääkäritapaamisella hoitaja valitti lääkärille etten tee mitään muuta kuin makaan ja ulkoilen. Kävin kuitenkin s
      365
      1445
    8. Kerro mulle mitä pitäs tehdä

      Sun mielestä? Anna neuvo?
      Ikävä
      91
      1150
    9. Toivotko, että

      hän tulisi juttelemaan sinulle, vai lähestytkö mieluummin itse?
      Ikävä
      89
      1115
    10. On tullut aika lukita kaupunginjohtajan ovi, ja hlö pihalle

      Ei kahta eikä yhtäkään selitystä, ylimielisyys on kääntyi varomattomuudeksi, ja kaupungin jo ennestään kuihtuva talou
      Pyhäjärvi
      195
      1086
    Aihe