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.
Vastaukset 7
- 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 SubMarkerForegroundColor = 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
Ny se loppuu ( Kuhmo)
Yhtiö on myyty. Notta yyteet meleko äkkiä, notta. Pelastautukoon ken voi. Notta se on tuulista pian.702256Parikymppinen hakkasi nelikymppisen kriittiseen tilaan
Ja ihminen jäi junan alle lautiosaaressa...paljon on taas sattunut ja tapahtunut. Ketähän nämä uhrit mahtaa olla 🤔 htt351824- 1001181
- 47945
Kaivattusi tärkein ulkoinen tuntomerkki
Onko jokin muu kuin yleinen kuten kaunis, laiha. hyväkroppainen jne.26807- 87803
- 29680
- 41675
Äimän käki
Olen vähää vaille viisikymppinen mies, ja olen elellyt ilman parisuhdetta parisen vuotta. Nyt vihdoin ja viimein tuntuu,142657Nainen, miten suhtautuisit
Jos mies ehdottaisi tapaamista? Entä siihen, jos mies kertoisi tapaamisessa tunteistaan ja haluaisi seurustella?56588