Avatar billede zjat Nybegynder
23. november 2011 - 12:33 Der er 5 kommentarer og
1 løsning

Benytte Y-aksens max værdi i beregning

Hej Alle sammen

Er der nogen måde hvorpå man kan aflæse den Y-værdi, som excel sætter som max på y-aksen? dvs. bruge værdien i en formel i excel.

Problemet er at jeg har en graf, hvor jeg har en søjle, som hele tiden skal fylde hele y-aksen ud. Da Y-aksen svinger i max værdi, er det hele tiden en ny værdi - kan man mon beregne den værdi excel når frem til?
Avatar billede Slettet bruger
23. november 2011 - 12:57 #1
Det automatiske maksimum for y-aksen (y_maks og y_min begge positive) er første overordnede enhed større end eller lig med værdien returneret af følgende ligning:

y_maks + 0,05 *(y_maks - y_min)

Hans
Avatar billede zjat Nybegynder
23. november 2011 - 13:50 #2
Så hvis jeg bruger den formel i excel, burde den give det samme som y-værdiens øverste punkt på aksen?

Smart! hvor finder man dog de guldinformationer?

Ved du tilfældigvis også hvordan man laver 2 x-akser med dato på den ene akse og tidspunkt på den anden akse (tænkte datoen skulle stå i toppen af grafen og tidspunktet i bunden af grafen)
Avatar billede zjat Nybegynder
23. november 2011 - 13:53 #3
Dohh...kan jeg jo ikke bare sætte ind - for så hæver y-aksen sig bare yderligere. Hvordan kan man sætte en formel ind i stedet for en konstant værdi for y-max under graf opsætning?
Avatar billede Slettet bruger
23. november 2011 - 14:30 #4
Du spurgte:

Er der nogen måde hvorpå man kan aflæse den Y-værdi, som excel sætter som max på y-aksen? dvs. bruge værdien i en formel i excel.

Og ja, det er der, nemlig ved hjælp af den nævnte formel.

Hvis det du faktisk mener er, om man kan bruge en formel til at bestemme (ikke aflæse) y_maks så er svaret nej. Men du kan gøre det ved hjælp af følgende, hvor du placerer formlen for ønsket y_min og y_maks i D1 og D2:

Sub SetScale()
Dim WS As Worksheet
Dim Cht As Chart
Set WS = Worksheets("Ark1")
Set Cht = WS.ChartObjects("Diagram 1").Chart
WS.ChartObjects("Diagram 1").Chart.Axes(xlValue).MinimumScale = Range("D1").Value
WS.ChartObjects("Diagram 1").Chart.Axes(xlValue).MaximumScale = Range("D2").Value
End Sub
Avatar billede zjat Nybegynder
23. november 2011 - 14:55 #5
Hej Hanknu.

Det var fordi jeg gerne ville undgå VBA.

Men hvis det ikke kan lade sig gøre uden VBA - så smid svar og jeg må benytte VBA formelen :)

Tak for dine hurtige og gode hjælp :)
Avatar billede Slettet bruger
23. november 2011 - 15:39 #6
OK
Hans
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester