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

180

    Vastaukset 7

    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. Mitä haluaisit minusta mies

      Meidän tilanne on ns.vaikea, eikä olla koskaan puhuttu tai edes ehditty puhua siitä, että mihin me tällä kaikella säätäm
      Ikävä
      69
      969
    2. Niin se mies

      Mikä sen miehen etunimi muuten on ketä kaipailet
      Ikävä
      55
      938
    3. Kun olet noin varovainen, niin tehdään näin

      Ollaan luontevia kun tavataan. Ei mitään paineita. Halataan lämpimästi toisiamme, ja sitä hetkeä voi viivyttää, kunnes s
      Ikävä
      42
      883
    4. Martina Aitolehti ja Nanna Karalahti - Rajua röykytystä nyrkkeilymatsista "Ettei naisten botoksi..."

      Martina Aitolehti ja Nanna Karalahti nyrkkeilevät toisiaan vastaan Immu Fight Nightissa. Naiset ovat saaneet osakseen k
      Kotimaiset julkkisjuorut
      54
      675
    5. Selvitetään tämä meidän välinen juttu

      Kertoisin sulle, mitä sinussa näen ja mikä viehättää eniten. Pitkä tarina tulisi siitä, mutta haluisin nähdä, kun kuunte
      Ikävä
      21
      674
    6. Mikä on ollut

      Paras kuva kaivatustasi?
      Ikävä
      33
      615
    7. Martina ja Levin kiinteistö

      Ei ole enää "mun Leviä". Kiinteistöllä uudet omistajat ja välillä palautui takaisin rakennuttajallekin, miksköhän.
      Kotimaiset julkkisjuorut
      269
      586
    8. Harmittaa kun en saa edes tietää

      miten elämässäs menee. Niinkin tärkeä asia, et miten jaksat. Kuinka terveys jne. Olet niin tärkeä, että haluaisin tietää
      Ikävä
      44
      558
    9. Miesten vs naisten älykkyys

      Eiköhän tämä asia ole ihan itsestään selvä: "Adult male brains average approximately 1,370–1,378 grams, while female br
      Sinkut
      162
      517
    10. Onko jo liian törkeää? Selviytyjät Suomi herättää kummastusta

      Selviytyjät Suomi juhlistaa 10. tuotantokauttaan - ja tiedossa on entistä ankarampaa menoa. Mutta mennäänkö jo liian pi
      Tv-sarjat
      5
      501
    Aihe