Gå til innhold

Betinget formatering av diagram i Excel?


Anbefalte innlegg

Jeg har laget et regneark hvor jeg har endel diagrammer (stablet stolpediagram om det er av betydning) hvor verdiene skulle hatt unike farger ut ifra navnet på hvert element i diagrammene.

Regnearket oppdateres daglig, og rekkefølgen på elementene er ikke nødvendigvis lik fra dag til dag - dermed skulle jeg svært gjerne hatt en mulighet for betinget formatering her...

 

Nå er det også slik at enkelte elementer kan/vil dukke opp i flere av diagrammene (de ligger da uansett i forskjellige celler).

Disse må ha samme bakgrunnsfarge i alle diagrammene de kan dukke opp i.

 

 

Jeg er smertelig klar over at Excel ikke har noen betinget formatering i diagrammer, så da lurer jeg på om det er noen her som har tips til hva jeg kan gjøre for å få til dette :)

 

Har sett for meg en løsning med macroer, men er desverre knapt nok som nybegynner å regne når det kommer til å kode disse selv fra grunnen av.

Navn på de forskjellige elementene i diagrammene er statisk (plassering i tabellene varierer), det er 25-30 unike elementer, så det er fullt mulig å lage en liste over foretrukne farger uten at det blir alt for mye jobb.

 

Er dette riktig vei å gå? I tilfelle, er det noen som kunne gitt meg en kort kodesnutt for å hjelpe meg igang?

 

Forresten; Vil det være mulig å behandle alle diagrammene under ett, eller må en lage en egen løsning for hvert diagram?

(Om det er mulig vil det være kun positivt, det finnes bare ett annet diagram i arket, og det har andre elementer som da ikke vil påvirkes dersom det går an å definere en farge til hvert element.)

Lenke til kommentar
Videoannonse
Annonse

Jeg fant en løsning i helga, som nesten helt uten omskrivninger fungerte som jeg ville :)

 

Sub ColorBySeriesName()
 Dim rPatterns As Range
 Dim iSeries As Long
 Dim rSeries As Range

 Set rPatterns = ActiveSheet.Range("Z4:Z48")
 With ActiveChart
For iSeries = 1 To .SeriesCollection.Count
  Set rSeries = rPatterns.Find(What:=.SeriesCollection(iSeries).Name)
  If Not rSeries Is Nothing Then
	.SeriesCollection(iSeries).Interior.ColorIndex = _
		rSeries.Interior.ColorIndex
  End If
Next
 End With
End Sub

 

Denne koden fungerte helt ypperlig for meg, men for en annen bruker ble fargene helt tullerusk :roll:

Det er nøyaktig samme fila det er snakk om, ligger på server (IBM DB2 Document Manager om det skulle være av betydning), og både jeg og den andre brukeren jobber i Citrix Metaframe og har da selvfølgelig akkurat samme versjon av Excel.

 

Noen forslag til løsning av det problemet?

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...